os模块
os模块是和操作系统进行交互的一个模块,是我们写的代码和操作系统之间的桥梁
import os
和文件夹相关
os.makedirs('a/b/c') # 递归创建文件夹
os.removedirs('a/b/c') # 递归删除文件夹,彻底删除(如果文件夹中有文件就不删除)
os.mkdir() # 创建单个文件夹
os.rmdir() # 删除单个文件夹,有内容时不删除
os.listdir() # 查看当前文件夹下的所有内容,以列表展现
和文件相关
os.remove('文件名') # 删除文件
os.rename('旧文件名','新文件名') # 重命名
和路径相关
os.curdir() # 当前文件的路径
os.pardir() # 上一级目录,
os.getcwd() # 查看文件当前路径,有返回值
os.chdir('path') # 切换目录 *****
print(os.getcwd())
path系列
os.path.abspath('path') # 返回一个正规的绝对路径
os.path.split('path') # 将路径分割为一个目录和一个文件名,以元祖展现
os.path.dirname('path') # 接住split分割后的目录,文件父目录的绝对路径
os.path.basename('path') # 接住split分割后的文件名
os.path.getsize('path') # 获取文件大小
os.stat('路径'.st_size) #
is系列
os.path.isfile('path') # 是否为文件
os.path.isdir('path') # 是否为存在的目录
os.path.isabs('path') # 是否为绝对路径
os.path.join
os.path.join(磁盘开始的路径,新添加的路径)
ret = os.getcwd()
print(os.listdir(ret))
join配合__file__:
BASE_dir = os.path.abspath(__file__)
print(BASE_dir)
print(os.path.join(BASE_dir,'文件名'))
和执行系统命令相关
os.system('系统命令')
os.popen('系统命令').read() # 通过代码向操作系统发出一些指令
os.environ # 获取系统的环境变量
和操作系统差异相关
os.sep # 获取当前操作系统分隔符:Windows系统是\\,Linux系统是/
os.linesep # 当前操作系统终止符
repr(os.linesep) # '\r\n'
os.pathsep # windows环境变量中的分割符是分号,Linux环境中是冒号
os.name # Windows系统返回nt,Linux系统返回posix
sys模块
sys模块是代码和python解释器之间的一个桥梁
import sys
sys.path() Python解释器的环境变量
sys.platform() 返回的是python解释器的平台信息
sys.version() 当前路径,在终端中运行,调用时可以传参
sys.argv()
hashlib模块
hashlib提供了摘要算法,如md5,sha1,sha256,sha512等
md5是单向的,是不可逆的,内容会转换成32位的哈希值
import hashlib
md5 = hashlib.md5
md5.update('内容',encode('utf-8'))
print(md5.hexdigest())
md5加盐:
md5 = hashlib.md5('内容'.encode('utf-8')) 加盐
md5.update('内容',encode('utf-8'))
print(md5.hexdeigest())
sha1,长度为40,还有sha256,sha512
s = hashlib.sha1()
s.update('内容',encode('utf-8'))
print(s.hexdigest()) sha1的哈希值比md5的长,更安全
sha在文件下载时,可以检验文件的一致性