subprocess模块
特别强大的一个模块
import subprocess #获取在当前目录下执行终端命令dir的返回结果 response=subprocess.Popen('dir', shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE) print(response.stdout.read().decode('gbk')) #stdout输出,read方法获取的是bytes类型 输出: 驱动器 C 中的卷是 Windows 卷的序列号是 1C71-E49F C:\Users\HP\PycharmProjects\untitled1\网络编程 的目录 2019/06/26 17:59 <DIR> . 2019/06/26 17:59 <DIR> .. 2019/06/26 13:13 29 user_info.txt 2019/06/26 16:36 382 客户端.py 2019/06/26 17:59 239 服务端.py 3 个文件 650 字节 2 个目录 22,156,566,528 可用字节
hashlib模块
加密模块,可用于存储用户的密码
import hashlib md5=hashlib.md5()# MD5算法 md5.update(b'helloworld') print(len(md5.hexdigest()),'位 :',md5.hexdigest()) md5_2=hashlib.md5()# MD5算法 md5_2.update(b'hello') md5_2.update(b'world') print(len(md5_2.hexdigest()),'位 :',md5_2.hexdigest()) sha3_224=hashlib.sha3_224() # 第二种算法 sha3_224.update(b'qwertyuiop') print(len(sha3_224.hexdigest()),'位 :',sha3_224.hexdigest())
输出结果:
32 位 : fc5e038d38a57032085441e7fe7010b0
32 位 : fc5e038d38a57032085441e7fe7010b0
56 位 : 1151277f52cafb7d500b3b29507badc6522672b361a6271099b9581c说明b'helloworld'分开加密和一起加密是一样的结果,只要加密的字符串一样,结果就一样。当摘要很大的文件时要分段摘要。