网站建设完工后在什么科目核算,微信公众号功能模块,canvas效果网站,做淘宝美工图片网站hashlib、shutil和tarfile、configparser 文章目录 hashlib、shutil和tarfile、configparser一、hashlib二、shutil和tarfile1.shutil2.tarfile 三、configparser 一、hashlib
hash是一种算法#xff0c;该算法接受传入的内容#xff0c;经过运算得到一串hash值。如果把hash…hashlib、shutil和tarfile、configparser 文章目录 hashlib、shutil和tarfile、configparser一、hashlib二、shutil和tarfile1.shutil2.tarfile 三、configparser 一、hashlib
hash是一种算法该算法接受传入的内容经过运算得到一串hash值。如果把hash算法比喻为一座工厂那传给hash算法的内容就是原材料生成的hash值就是生产出的产品。
hash值三大特性
只要传入的内容一样得到的hash值必然一样只要我们使用的hash算法固定无论传入的内容有多大得到的hash值的长度是固定的不可以用hash值逆推出原来的内容
基于1和2可以在下载文件时做文件一致性校验基于1和3可以对密码进行加密。
import hashlib
#hashlib有许多加密的算法md5是比较常见的一种其他还有sha256、sha512等
hhashlib.md5()
#将字符传给hashlib
h.update(123.encode(utf-8))
h.update(hello.encode(utf-8))
print(h.hexdigest())
86fcb4c0551ea48ede7df5ed9626eee7由于只使用加密算法加密的数据容易被破解出来一般对密码的加密操作中还会进行加盐操作在python中可以使用hmac模块完成此操作。
import hmac,hashlib
hhmac.new(12345678.encode(utf-8),digestmodhashlib.md5)
print(h.hexdigest())二、shutil和tarfile
1.shutil
shutil模块常用来进行文件操作。
import shutil
#将文件a拷贝到文件b
shutil.copyfile(a,b)
#将文件a的权限拷贝至文件b(b必须存在)
shutil.copymode(a,b)
#递归拷贝文件夹a至文件夹b处并忽略以.pyc结尾和以tmp开头的文件
shutil.copytree(a,b,ignoreshutil.ignore_patterns(*.pyc,tmp*))
#递归删除文件夹
shutil.rmtree(a)
#移到文件/文件夹a至b处(可用来重命名文件)
shutil.move(a,b)
#将b中文件按format格式压缩打包为a文件
shutil.make_archive(a,format,b)2.tarfile
tarfile库包含一些对tar文件的操作例如解压缩.tar.gz
import tarfile
with tarfile.open(example.tar.gz, r) as tar:tar.extractall(pathdest/)tar.close()三、configparser
configparser模块常用来操作一些配置文件如cfg、ini、cnf等
import configparser
configconfigparser.ConfigParser()
#读取配置文件如cfg、ini、cnf
config.read(config.ini)
#取出文件标题
config.sections()
#取出文件标题e下的键
config.options(e)
#取出标题e下键age的值返回字符串
config.get(e,age)
#取出文件标题e下的键值对并返回列表
config.items(e)