time
import time
time.ctime()获取当前时间的字符串
time.localtime() 返回值是strcut_time类型的对象
st = time.localtime()
st.tm_yday 现在是今年第几天
st.tm_hour 现在是今天第几个小时
st.tm_mon 现在是今年的第几个月
time.strftime() 将struct_time类型对象格式化为字符串
time.strftime(‘%Y-%m-%d %H:%M:%S’,st)
time.sleep() 强制挂起当前进程
requests
import requests
r = requests.get(‘url’)
r.status_code
r.headers[‘content-type’]
r.text
r.json() 将返回的json数据转化为一个python字典
base64
编码和解码
import base64
base64.b64encode(b’Hello,shiyanlou!’)
base64.b64decode(b’’)
copy
浅复制 深复制
copy.copy copy.deepcopy
l2 = copy.copy(l)
l2 = copy.deepcopy(l)
configparser
编辑配置文件
from configparser import ConfigParser
config = ConfigParser()
config.read(‘file’,encoding=’utf-8’)
config.sections() 获取所有的配置组
config.options(‘section1’) 获取sections1配置组的所有options
config.items(‘section1’) 获取section1下的所有键值对
config.get(‘sections1’,’item1’) 获取section1 配置组下的item1对应的值
config.add_section(‘section2’) 添加新的section2配置组
config.set(‘section2’,’option1’,’123’) 对section2添加新的option
config[‘section2’][‘option1’]=’456’ 修改option1的值为456
with open(‘file’,’w’,encoding=’utf-8’) as file1:
config.write(file1) 将修改后的配置写入配置文件中
collections
提供一些特别的容器
from collections import Iterable 判断是否是可迭代对象
isinstance(‘shiyanlou’,Iterable) 字符串是可迭代对象
isinstance(123,Iterable) 数值不是可迭代对象
from collections import Iterator 判断是否是迭代器
from collections import Generator 判断是否是生成器
from collections import OrderedDict 特殊字典,本质是哈希表,一般是无序的,能保持元素插入的顺序
d = OrderDict()
d[‘apple’] = 1
d[‘google’]=2
from collections import namedtuple
from collections import Counter
c = Counter(‘wwww12345’)
c.most_common(3)
re正则表达式
findall 获取全部能够匹配的片段,放到一个列表里,第一个参数为正则表达式,第二个参数为被匹配对象
\d 0-9数字
\D 匹配所有非数字
\w 匹配所有单词字符,包括大小写字母、数字、下划线、中文
\W 匹配剩下的,空格、换行符、特殊字符等
字符集 [] 匹配任意符合条件的字符
re.findall(‘char[ad]’,s)
re.findall(‘char[^ad]’,s) ^代表非
re.findall(‘char_[a-c]’,s) a-c表示a至c
空白字符 \s ‘ ’空格、\n 换行符、\t 制表符、\r回车符
re.finall(‘\s’,s)
{} 标定匹配字符的数量,默认匹配模式是贪婪模式,即尽可能多的匹配字符
?表示非贪婪模式,选取最少的匹配字符
re.findall(‘a-z{3}’,s)
*匹配任意数量的字符
?匹配0或1个字符
+匹配1或多个字符
.匹配除换行符\n以外任意1个字符
边界字符 ^行的开始处匹配 $行的末尾处进行匹配
字符组 () 为匹配成功的字符串进行分组