Python
多组输入/一行读多个数
当输入的是string型时,可不用int,否则要用int或者float
while True: n,m = map(int,input().split()) print(n,m)
输入时只能在一行输入,换行直接退出
while True: try: n,m = map(int,input().split()) print(n,m) except: break;
多行输入存放到list里
list1 = [] for i in range(1,3): for s in input().split(): list1.append(int(s)) print(list1)
同时包含整数和字符串
n,m,t = map(str,input().split()) n = int(n) m = int(m)连续输入多个放到列表中
n = (int)(input()) a = list(map(int,input().split()))format:
print("{2},{1},{0} is 2".format('1','2','3')
random模块
from random import *
x = [1,2,3,5,4]
x.sort(reverse=True)
print(x)
x.sort()
print(x)
print(sample(x,2))
print(randrange(1,10,1))#randrange(start,stop,step)
print(random())#产生一个[0,1)的实数
shuffle(x)#将序列中的所有元素随机排列
print(x)
print(uniform(5,10))#产生一个[5,10]内的实数
print(choice(range(10)))#选择一个[1,9]内的整数
大数相加
Python支持大数计算,基本上都能算
k = int(input()) for i in range(k): n = (int)(input()) m = (int)(input()) print(n+m)
反转reverse()和reversed()
reverse():
只能用于列表,没有返回值,使用后原列表反正,返回值位none
n = input() n = list(n) n.reverse() for i in range(len(n)): print(n[i],end="")reversed():
也可用于字符串或元组等
n = input() n = list(n) a = list(reversed(n))#不能直接写a=recersed(n) for i in range(len(a)): print(a[i],end="")
sort()函数
参数
1)key:按指定元素排序
2)reverse: reverse=True 按从大到小排序 reverse=False 从小到达排序 默认等于False
list1.sort(key=none,reverse=True)
列表list()
1)remove():可指定删除某个值,但只能删除在列表中第一次出现的那个值,如果要全删掉,要多次调用remove()
2)pop(): 可删除指定下标的值,下标从零开始
3)clear(): 情况列表
列表推导器:
list1 = [i for i in range(100) if i % 2]
字典dist()
fromkeys()
可以创建值相同的字典
dict1 = {} dict1 = {}.fromkeys(['优','良','中'],'大于等于60分') print(dict1)推导式创建字典
dict1 = {} dict1={x:x ** 2 for x in range(10)} print(dict1)访问字典
1:用get()通过键访问值
dict1 = {} dict1={x:x ** 2 for x in range(1,5)} print(dict1) print(dict1.get(4))2:items():访问所有键值对 keys():访问所有键 values():访问所有值
dict1 = {} dict1={x:x ** 2 for x in range(1,5)} print(dict1) print(dict1.items()) print(dict1.keys()) print(dict1.values())
遍历字典
dict1 = {} dict1={x:x ** 2 for x in range(1,5)} for i in dict1.values(): print(i,end=" ")更新字典
setdefault(): 添加键值对, 如果没有这个键则加在字典尾部,否则修改这个键的值为第二个参数
dict1 = {} dict1={x:x ** 2 for x in range(1,5)} dict1.setdefault('5','25') print(dict1)删除元素
del(),del,pop(),popitem(),clear()
1) pop():删除指定元素,如果不存在,则返回指定值,否则返回删除的值
dict1 = {} dict1={x:x ** 2 for x in range(1,5)} dict1.setdefault('5','25') print(dict1.pop('5','键不存在'))
2) popitem():随机删除字典中的一个元素,并返回删除的键值对
3) 清空字典,但字典还存在
样例:随机产生500个字母,统计每个字母出现的频率。
样例:随机产生500个字母,统计每个字母出现的频率。
import random dict1 = {} str = "abcdefghijklmnopqrstuvwxyz" for i in range(500): r = random.choice(str) dict1[r] = dict1.get(r,0)+1 print("单词总数为:",sum(dict1.values())) print(dict1)
集合set()
1) remove(): 删除集合中指定的值
2) pop(): 随机删除一个值
3) discard: 和list中的remove用法类似
4) clear(): 清空集合