1. 获取当前目录下的所有文件
可以使用 os.listdir(path)
函数,它可以返回 path
指定的文件夹包含的 文件
或 文件夹
的名字的列表。
使用方法如下:
import os
# 打开文件
path = "D://data/"
dirs = os.listdir( path )
# 输出所有文件和文件夹
for file in dirs:
print (file)
2. 遍历文件夹包括子文件夹
可以使用 os.walk(path)
函数,它可以通过在目录树中游走来遍历目录中的所有文件。
它返回的是一个三元组 (root, dirs, files)
的生成器,
root
所指的是当前正在遍历的这个文件夹的本身的地址dirs
是一个list
,内容是该文件夹中所有的目录的名字(不包括子目录)files
是一个list
,内容是该文件夹中的所有文件(不包括子目录)
使用方法如下:
import os
path = "D://data/"
for root, dirs, files in os.walk(path):
for name in files:
print(os.path.join(root, name))
for name in dirs:
print(os.path.join(root, name))
3. 其他常用的 OS 操作
此外有一些常用的 os
操作,如 os.path.exists(path)
和 os.makedirs(path)
。
os.path.exists(path)
用来判断path
路径是否存在,返回true
或false
。os.makedirs(path)
用来创建path
路径。
比如下载文件的时候,希望可以 断点续存
,也就是说在下载一个文件的时候,先判断本地路径中该文件是否存在。
if not os.path.exists(path):
#todo: download file
downloadFile(path)
else:
pass
有时候在保存文件时,如果路径不存在可能会保存失败报错,所以可以先判断路径是否存在,若不存在,则先创建。
if not os.path.exists(path):
# create path
os.makedirs(path)
# todo: save file
saveFiles()
此处评论已关闭