help('math') #介绍math函数
dir(x) #x都有哪些操作方法
type(x) #x的类型
a = input().split() #空格区别输入,生成list
b = [int(x) for x in a] #list中每个值转换为整型
sequence type --- list, tuple, range
a = ''.join(b) #list转化为字符串,''内可以增加字符作为间隔
a = float() #浮点数
a = int() #整数
a = str() #字符串
a = list() a = [x,x,x] #list
a = tuple() a = (x,x,x) #tuple
a = set() a = {x,x,x} #set
a = dict() a = ['xxx':yy,'zzz':qq] # dictionary
del a #list,tuple,set均可清空
a = [1,2,'3']
a[::-1] = ['3',2,1] #反转list
二进制运算:
0010 & 0110 = 0010 #与
0100 | 1001 = 1101 #或,其中1个为1即为1
~ 0010 = 1101 #非,10进制为 -x-1
1010 ^ 1101 = 0111 #异或,不同为1
1<<2 =4 #左移两位,前两位去掉,后两位补0
4>>2 =4 #右移两位,后两位去掉,前两位补0
str:
if str.isdigit(): #字符串内全为数字
str.isalnum() 全为数字或字母
str.isalpha() 所有字符都是字母
str.islower() 所有字符都是小写
str.isupper() 所有字符都是大写
str.istitle() 所有单词都是首字母大写,像标题
str.isspace() 所有字符都是空白字符、\t、\n、\r
str.strip(x) #去除str的开头和结尾中包含x部分,中间不变,x=12时双边21也会被去除。
str.replace(' ','') #去除字符串中空格
str.startswith('x') #如果以x开头则为True, x为From时From和From: 都算数
str.find('x') #如果字符串包含x则返回第一个x开头的所在位置,否则返回-1
str.split()#空格为单位分开单词构成list
str[::-1] #str倒序排列
import re #正则表达式模块
re.search('X',str) #字符串包含X则为True
re.search('^X',str) #字符串以X开题则为True
re.search('^X.*Y',str)/re.search('^X.+?Y',str)#字符串以第一个X开头到最后一个Y的段落,如果存在则为True,右侧不包含?号时两侧相同,为贪婪搜索到最后一个'Y'结束,加'?'后为直到遇到第一个'Y'结束。
re.search('^X\S+Y',str) #字符串以X-开头,直到第一个Y一直(+)不包含空格(\S),符合为True
re.findall('[o-p.]+',str) #返回字符串语句中包含纯数字o-p范围的数字构成list,不写'+'会把如'11'拆分成'1','1';加'.'可以找到小数。'o-p'替换成'AEIOU'则寻找纯大写字母单词.
re.findall('\$[o-p.]+',str) #返回字符语句美元 如$100。
re.findall('\S+@\S+',str) #找出字符串语句中含有'@'的单词
re.findall('^From (\S+@\S+)',str) #找出以From开题字符串语句中含有'@'的单词
re.findall('@([^ ]*)',str) #找出字符串@开始直到遇到第一个空格结束,它们之间的部分.re.findall('@\S+',str) 类似但是包含@。
list:
b,c,d = a #list拆分 b = 1,c = 2,d = '3'
range(0,10,2) #对应0 2 4 6 8
a.append('2') #list(链表)末尾加入
a.extend(L) #list末尾加入可以加入元素也可以加入list
a.insert(x,y) #list指定位置x处加入元素或list y,加入list时为嵌套
a.remove(x) #去除list中第一个值为x的元素
a.pop(x) #去除list中位置x处的元素
a.pop() # 去除list中最后一个位置元素
a.clear() #去除list中所有元素,等同于del a[:] / del a
a.index(y) #返回第一个值为y的元素的位置,0开始
a.count(y) #返回元素y在list中出现次数
a.sort()#对list内元素升序排列
a.sort(reverse = True ) #对list内元素降序排列
a.sort(key = lambda x:x[n]) #[(1,2),(2,1)]->根据嵌套内指定第n个tuple排序,等同于矩阵的第n列
id(x) #元素x对应的ID
a.reverse() = a[::-1] #list中元素倒过来排列,ex. 3,1,2 ->2,1,3
y = list(zip(*x)) #把嵌套元组构成的矩阵x行列转换
set:
a = set('aabbccdd') #a= {'a','b','c','d'}
set:a, a-b, a|b, a&b, a^b # a, a有b没有, a和b并集, a和b交集, ab中只在一个集合有的
dict:
y=dict(a=1,b=2,c=3) # 字典y={'a': 1, 'b': 2, 'c': 3}
yy.get('xx',0) #如果字典有'xx'返回其value,否则返回0
y[xx] = y.get(xx,0) + 1 #字典统计xx字符个数
a.setdefault(xx,0) #有xx返回其值,否则给xx赋值0并返回
y.items() #返回list如[('a', 1), ('b', 2), ('c', 3)]
y.values() #返回list包含每个key的value
y.keys() #返回list包含每个key
for i,j in enumerate(a):
print(i,j) #a是序列字典都ok, i为0-n位置,j为a[0]-a[n] (字典中为对应位置的key)
other:
a = open('xxx.txt')
b = a.read() %读入文件内容
str('xxx') %输出人读码
repr('xxx')%输出解释器读码
ord('A') %输出A对应的ASCII码
from math import * #把math内所有函数导入到当前命名空间
import math #建议使用。把math添加到当前空间,后面调用需要ex. print(math.pi)
‘0:10d’.format(x) %0表示左对齐,1表示右对齐,保留10位字符
time.sleep(5) %推迟运行5秒