常用标准库: 1.数学模块 math 2.随机模块 random。randint(m,n) - 产生[m, n]的随机整数 random.shuffle(列表) - 随机打乱列表中的元素 random.choice(列表) - 从列表中随机获取一个元素 random.choice(列表是, k=N) - 从列表中随机获取N个元素
3.os模块 os.chdir(路径) - 将指定路径对应的目录修改成当前目录 (默认情况下当前目录是当前py文件所在的目录) os.getcwd() - 获取当前目录的全路径 os.path.basename(path) - 获取该路径下的文件名 创建文件/文件夹、删除文件/文件夹、判断是否是文件/文件夹、判断文件/文件夹是否存在
4.json模块 5.re模块 - 正则表达式相关操作 6.sys模块 exit() 7.turtle - 画图模块 8.csv - csv文件操作 9.smtplib - 邮件的发送 10.time和dateTime 11.hashlib
print(int(-2.9)) # 取出整数部分 print(random.random()) # 产生[0, 1)的随机数 print(random.random()*100) # 产生[0, 100)的随机数 print(random.random()*50 + 50) # 产生[50, 100)的随机数 nums = [1, 2, 3, 4, 5, 6, 7] random.shuffle(nums) print(nums) # [3, 2, 7, 1, 5, 6, 4] print(random.choice(nums)) # 5 print(random.choices(nums, k=3)) # [7, 4, 2] print(os.getcwd()) # D:\pycharm\day15-常用模块 print(os.path.basename('user/name/a/b/cc.txt')) # cc.txt1.什么是时间戳
以秒为单位表示的到格林威治时间1970年1月1日0时0分0秒的时间差
保存时间的时候保存时间戳要比直接保存时间信息更加节约内存 对时间戳来进行加密比字符串时间加密要方便
1.time() - 获取当前时间 t1 = time.time() print(t1) # 1603093181.2492461 # 2.time.localtime() # time.localtime() - 获取当前的本地时间 # time.localtime(时间戳) - 获取指定时间戳对应的的本地时间 t2 = time.localtime() print(t2) print(time.localtime(2141241)) # 3.time.strftime(时间格式字符串, 结构体时间) - 将结构体转换成指定格式的字符穿时间 s1 = time.strftime('%Y/%m/%d %H:%M:%S', t2) # 2020/10/19 16:19:30 print(s1) # 4.time.strptime(字符串, 时间格式字符串) - 将字符串时间转换成结构体时间 s2 = time.strptime(s1, '%Y/%m/%d %H:%M:%S') print(s2)hashlib模块主要提供hash加密相关的算法来对数据进行加密处理
hash加密(hash摘要)的特点: a.加密结果不可逆(不能通过密文/摘要去获取到原文) b.同一个数据通过相同的算法加密之后的结果是一样的 c.不同的数据通过相同的算法加密之后的长度相同
hash摘要的应用场景: a.密码保存 b.数据完整性的的验证
# 1.根据算法创建hash对象(常用md5和shaXXX) # hashlib.算法名() hash1 = hashlib.md5() # 2.添加需要生成摘要/密文档的数据 # hash对象.update(数据的二进制) hash1.update('123456'.encode(encoding='utf-8')) # 3.生成摘要 dig = hash1.hexdigest() print(dig)