一.正则表达式:
1.1正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎 正则表达式常用语法:
.匹配任意除换行符“
”
转义字符串有字符*需要匹配,可以使用*或者字符集
d 匹配数字[0-9]
D 非数字
s 空白字符
S 非空白字符
w 单词字符
W 非单词字符
* 匹配前一个字符0 或无限次
+ 匹配前一个字符1次或者无限次
?匹配前一个字符0次或者一次
{m} 匹配前一个字符多少次
{m,n} 匹配前一个字符m至n次
^ 、
配字符串开头 在多行模式中匹配每一行的开头
$ 匹配字符串的末尾 多行匹配每一行的末尾
A 仅匹配字符串的开头
仅匹配字符串的末尾
| 代表左右表达式匹配, 优先匹配左边的表达式,一旦匹配成功跳过匹配右边的表达式,没有包括在()中则是整个表达式
二.内置函数
1.数学相关
绝对值:abs(-1)
最大最小值:max([1,2,3])、min([1,2,3])
序列长度:len('abc')、len([1,2,3])、len((1,2,3))
取模:divmod(5,2)//(2,1)
pow(2,3,4)//2**3/4
浮点数:round(1)//1.0
2.函数是否可调用:
callable(funcname),注意,funcname变量要定义过
类型判断:isinstance(x,list/int)
比较:cmp('hello','hello')
三、类型转换
int(x)
long(x)
float(x)
complex(x) //复数
str(x)
list(x)
tuple(x) //元组
hex(x)
oct(x)
chr(x)//返回x对应的字符,如chr(65)返回‘A'
ord(x)//返回字符对应的ASC码数字编号,如ord('A')返回65
四.字符串处理
首字母大写:str.capitalize
字符串替换:str.replace
字符串切割:str.split
五.序列处理
len:序列长度
max:序列中最大值
min:最小值
filter:过滤序列 例子 filter(lambda x:x%2==0, [1,2,3,4,5,6])
zip:并行遍历
reduce:归并
=======================================
random 模块
print(random.random())#(0,1)----float 大于0且小于1之间的小数
print(random.randint(1,3)) #[1,3] 大于等于1且小于等于3之间的整数
print(random.randrange(1,3)) #[1,3) 大于等于1且小于3之间的整数
print(random.choice([1,'23',[4,5]]))#1或者23或者[4,5]
print(random.sample([1,'23',[4,5]],2))#列表元素任意2个组合
print(random.sample([1,'23',[4,5]],2))#列表元素任意2个组合
random.shuffle(item) #打乱item的顺序,相当于"洗牌"
六 json 模块
json,用于字符串 和 python数据类型间进行转换,Json模块提供了四个功能:dumps、dump(序列化,存)、loads(反序列化,读)、load 跨语言进行json转换 JSON只能处理基本数据类型
mport json dic={'name':'egon','age':18} print(type(json.dumps(dic))) # 转换成python语言是别的字符串 with open('a.json','w') as f: #转换成python识别的语言 写入到文件 f.write(json.dumps(dic)) with open('a.json','r') as f: #从文件里面读取内容转换成python识别的对象 data=f.read() dic=json.loads(data) print(dic['name']) dic={'name':'egon','age':18} json.dump(dic,open('b.json','w')) #转换成python语言写入到文件 print(json.load(open('b.json','r'))['name']) #从文件读取内容转换成python识别的语言
七 picikle模块
pickle能处理所有Python的数据类型,pickle用于Python程序对象的持久化或者Python程序间对象网络传输,但不同版本的Python序列化可能还有差异。
import pickle dic={'name':'egon','age':18} print(pickle.dumps(dic)) #转换成python识别的字符串 with open('d.pkl','wb') as f: f.write(pickle.dumps(dic)) with open('d.pkl','rb') as f: #读取转换成python是别的语言 dic=pickle.loads(f.read()) print(dic['name']) dic={'name':'egon','age':18} pickle.dump(dic,open('e.pkl','wb')) #写入文件 print(pickle.load(open('e.pkl','rb'))['name'])#文件读取