入门 N day
math 普通数学模块
cmath 复数数学模块
random 随机数模块
random.radint (m,n) 产生m~n的随机数
random.random 产生 0~1的随机数,左闭右开区间,取不到1
random.shuffle(序列) 打乱列表的顺序
random.choice(序列) 随机取一个列表中的元素
random.choices(序列,k=N) 随机取N次元素,一次取一个
os 文件/目录方法模块
菜鸟教程地址:
https://www.runoob.com/python3/python3-os-file-methods.html
os.chdir(路径) 将指定路径对应的路径,修改成当前py文件所在的路径
os.getcwd() 获取当前文件的绝对路径
os.path.basename(路径) 获取指定路径的文件名
os.path.exists(路径) 判断指定路径的文件是否存在
json 模块
re 正则模块
sys.exit() 提前退出线程
turtle 画图模块
csv csv文件操作
smtplib 邮件的发送
print(random.random() * 100) # 产生0~100的随机小数
print(random.random() * 50 + 50) # 产生50~100的随机小数
str1 = 'abc'
print(random.choices(str1, k=2)) # ['c', 'c']
print(os.getcwd()) # E:\Python2004\01语音基础\day15-常用模块
print(os.path.basename(r'E:\Python2004\01语音基础\day15-常用模块.py'))
# day15-常用模块.py 获取指定路径中的文件名
print(os.path.basename(r'E:\Python2004\01语音基础')) # 01语音基础
turtle.setup(600, 800) # 创建一个600*800的画布
-
时间戳:
以秒为单位表示到格林威治时间1970年1月1日0时0分0秒的时间差,和北京时间相差8个小时
保存时间戳要比直接保存时间信息更加节省内存
对时间戳进行加密比对字符串时间加密方便得多
time() 获取当前时间的时间戳t1 = time.time() # 1603093091.0485027 second = 1603093091.0485027 t2 = time.localtime() print(t2) # time.struct_time(tm_year=2020, tm_mon=10, tm_mday=19, tm_hour=16, tm_min=4, tm_sec=30, tm_wday=0, tm_yday=293, tm_isdst=0) t3 = time.localtime(second) print(t3) # time.struct_time(tm_year=2020, tm_mon=10, tm_mday=19, tm_hour=15, tm_min=38, tm_sec=11, tm_wday=0, tm_yday=293, tm_isdst=0) print(time.localtime(0)) # time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=8, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=1, tm_isdst=0) # strftime() t = time.time() # 1603093091.0485027 second = 1603093091.0485027 t2 = time.localtime(t) t3 = time.strftime('%Y-%m-%d %H:%M:%S', t2) print(t3) # 2020-10-19 16:19:07 # strptime() s1 = '2020/10/19' s2 = time.strptime(s1, '%Y/%m/%d') print(s2) # time.struct_time(tm_year=2020, tm_mon=10, tm_mday=19, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=0, tm_yday=293, tm_isdst=-1)
- hashlib 模块主要提供hash摘要(hash加密)相关的算法来对数据进行加密处理
- 加密结果不可逆(不能通过密文/摘要获取到原文)
- 同一个数据通过相同的算法,加密之后的结果是一样的
- 不同的数据通过相同的算法加密之后的长度相同
hash摘要的应用场景: - 密码保存
- 数据完整性的验证
# 根据算法创建hash对象 hash1 = hashlib.md5() # 添加需要生成摘要(密文的数据) hash对象.update(数据的二进制) mima = '123456' hash1.update(mima.encode(encoding='utf-8')) # 生成摘要 dig = hash1.hexdigest() print(dig) # e10adc3949ba59abbe56e057f20f883e hash2 = hashlib.sha1() mima = '123456' hash1.update(mima.encode(encoding='utf-8')) # 生成摘要 dig = hash1.hexdigest()