python处理文件—os模块
2018-07-05 本文已影响0人
white_study
简介
编程时,免不了和文件及文件夹打交道,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' ]