从入门到入狱-------常用模块

入门 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()
    

猜你喜欢

转载自blog.csdn.net/weixin_44628421/article/details/109166595