os
os.path 操纵文件路径,os 操纵文件,os.environ 环境变量
os.getcwd() # 类似Linux pwd, '/home/ubuntu/code/backend/projects/gbm'
print(__file__) # 当前执行脚本的路径,包含文件名bar.py
python path/bar.py # 'path/bar.py'
# 文件路径名称相关操作,一般都是os.path开头
os.path.abspath(__file__) # 绝对路径
os.path.basename(__file__) # 文件名
os.path.dirname(__file__) # 目录名
os.path.isabs(__file__) # 是否绝对路径名
os.path.isfile('app.py') # 判断是否是文件
os.path.isdir('custom') # 判断是否是文件夹
os.path.exists('custom/hooks.py') # 文件是否存在,可认为是isfile or isdir
os.path.split('custom/hooks.py') # ('custom', 'hooks.py')
os.path.join('custom', 'hooks.py') # 'custom/hooks.py'
# 操纵文件或目录, 一般以os开头
os.path.getsize('bar.py')
os.stat('bar.py') # 文件属性
os.listdir() # 展示当前目录的文件和目录列表 [....]
os.remove('lazy_dog.txt') # 删除文件
os.mkdir('dir1') # 创建目录
os.makedirs('dir2/dir22') # 创建记录目录
os.rename/replace # 重命名
shutil.copyfile('file1', 'file2') # 拷贝文件
shutil.rmtree('dir2') # 递归删除文件夹
os.environ # 环境变量
os.environ['HOME'] # '/home/ubuntu'
# 遍历目录文件
for root, dirs, files in os.walk('custom'):
root # 所指的是当前正在遍历的这个文件夹的本身的地址
dirs # list, 该文件夹中所有的目录的名字(不包括子目录)
files # list, 该文件夹中所有的文件(不包括子目录)
os.path.expanduser(path) # 把path中包含的"~"和"~user"转换成用户目录
Last updated