python处理文件—os模块

简介

编程时,免不了和文件及文件夹打交道,python内置的os模块可以很好地处理该部分内容,这里简要记录一下os模块中,对文件处理的常用方法。

处理文件

1.os.path.abspath:获取当前文件的绝对路径

# 获取当前文件的绝对路径
absolute_file_path = os.path.abspath(__file__)
print(absolute_file_path)

打印结果:G:\PythonLanguageDemo\test.py

2.os.path.basename:获取指定文件路径的文件名称

# 获取文件路径的文件名称
file_name = os.path.basename(__file__)
print(file_name)

打印结果:test.py

3.os.path.dirname:获取指定文件路径的文件夹路径

# 获取当前文件所在的文件夹路径
folder_name = os.path.dirname(__file__)
print(folder_name)

打印结果: G:/PythonLanguageDemo

4.os.path.normpath:获取规范的文件路径

# 不规范的文件路径
file_path = "G:/PythonLanguageDemo\exercise\\code/test.py"
norm_file_path = os.path.normpath(file_path)
print(norm_file_path)

打印结果(window平台):G:\PythonLanguageDemo\exercise\code\test.py

5.os.path.rename:文件重命名

old_file = "D:/info.json"
new_file = "D:/information.json"
# 重命名文件
os.rename(old_file, new_file)

6.判断文件是否存在,返回值为布尔型

file_path = "D:/info.json"
has_file = os.path.exists(file_path)
print("file path: [{}] is exist: {}".format(file_path, has_file))

打印结果:file path: [D:/info.json] is exist: False
处理文件夹

1.os.path.makedirs:递归创建文件夹(创建多个不存在的文件夹)

# 路径中的多个文件夹都不存在时,可以递归创建
forders_path = "D:/python-os/study-python/code"
os.makedirs(forders_path)

2.os.path.mkdir:创建一个文件夹

# python-os文件夹存在,才能创建one-forder文件夹,否则会出错
forder_path = "D:python-os/one-forder"
os.mkdir(forder_path)

3.os.listdir:获取文件夹下的所有文件名(非递归)

forder_path = 'D:/wuhan_python_job'
# 获取文件夹wuhan_python_job下的所有文件名,以列表的形式返回
file_names = os.listdir(forder_path)
print(file_names)
打印结果:[ 'wuhan_python_job_1.json', 'wuhan_python_job_2.json', 'wuhan_python_job_3.json' ]

你可能感兴趣的:(python处理文件—os模块)