运行环境
Python 3.12.0
使用os模块时,请使用以下命令导入。
import os
简介/使用示例
检查文件/文件夹是否存在
-
os.path.isfile(path) -> True / False (返回值)
确定参数指定的文件路径是否存在。
-
os.path.isdir(path) -> True / False (返回值)
判断参数指定的目录(文件夹)路径是否存在。
-
os.path.exists(path) -> True / False (返回值)
确定参数指定的路径是否存在。
上述第一、第二和第三有什么区别?
os.path.isfile(path)仅返回文件路径;
os.path.isdir(path)仅返回目录(文件夹)路径;
os.path.exists(path)如果路径存在则返回True。
可以根据情况使用不同的,但目前来看,使用第三种似乎没有问题。
import os
dir_path = r"C:\Work\csdn"
file_path = dir_name + r"\hojihoji.py"
if os.path.isfile(file_path):
print("文件存在!")
else:
print("没有文件")
if os.path.isdir(dir_path):
print("有一个文件夹!")
else:
print("没有文件夹q_q")
if os.path.exists(file_path):
print("路径存在^q^")
创建目录(文件夹)
-
os.mkdir(path)
创建由参数指定的目录(文件)。
如果文件夹已存在,则会出现错误
import os
dir_path = r"C:\Work\csdn"
os.mkdir(dir_path)
删除文件
-
os.remove(path)
删除参数指定的文件。
如果文件不存在,将会发生错误。
import os
file_path = r"C:\Work\csdn\hojihoji.py"
os.remove(file_path)
获取文件时间戳
-
os.path.getatime(path)
获取参数指定的文件的上次访问日期和时间。
-
os.path.getmtime(path)
获取参数指定的文件的最后内容更新日期和时间。
-
os.path.getctime(path)
获取参数指定的文件的创建日期和时间。
所有返回值均以UNIX时间返回。
import os
file_path = r"C:\Work\csdn\hojihoji.py"
print(os.path.getatime)
print(os.path.getmtime)
print(os.path.getctime)
#---------------------------------------#
1700463253.0382283 (getatime)
1700463221.9840796 (getmtime)
1700463221.8750641 (getctime)
可以执行诸如“当共享文件夹中的特定文件已更新时,发送通知”之类的过程。
获取文件和目录的列表
-
os.walk(path)
扫描参数指定的目录中的文件。
扫描具有以下结构的工作目录。
Work
├ CSDN1
│├test1.txt
│└test2.txt
└ CSDN2
└test3.txt
import os
dir_path = r"C:\Work"
for folder, subfolder, file in os.walk(dir_path):
print("*****")
print(folder)
print(subfolder)
print(file)
#---------------------------------------#
*****
C:\work
['CSDN1', 'CSDN2']
[]
*****
C:\work\CSDN1
[]
['test1.txt','test2.txt']
*****
C:\work\CSDN2
[]
['test3.txt']
这在“对特定文件夹下的.〇〇文件进行XX处理”等情况下很有用。
综上所述
这次我只能介绍其中的几个。 还可以使用操作系统模块执行许多其他操作。
os 模块详细信息 (https://docs.python.org/ja/3/library/os.html)