在Python中,可以使用 os 模块主要对文件进行重命名,删除等一些操作
以下为 os 模块常用的方法示例:
import os
os.rename('Test.txt','Test_重命名.txt')
# 参数1:要重命名的源文件
# 参数2:对源文件要重新命名的名称
import os
os.remove('Test_重命名.txt')
# 参数为要删除的源文件名称,如果该文件不存在则抛出异常
import os
os.mkdir('newDir')
# 参数为要创建的空文件夹名称
import os
os.rmdir('newDir')
# 参数为要删除的空文件夹名称,如果该文件夹不存在则会抛出异常
# 注意事项:使用该函数删除文件夹时,文件夹必须是空的目录。如若该文件夹存在数据或存在多及子目录,删除会抛出异常
import os
os.makedirs('d:/python/subdir')
由于os模块,只能删除一级目录并且只能删除空的文件夹目录。如果要删除多级目录并且是非空的目录,就需要使用 shutil 模块
里面的 rmtree 函数
import shutil
shutil.rmtree('d:/python')
# 把当前 python 文件夹,包含该文件夹目录里面的所有内容删除掉
import os
os.path.join('参数1','参数n')
# 把里面的参数进行拼接
遍历出 D 盘文件夹目录
方式一 直接使用 os模块的 listdir
,返回一个列表
import os
listRs=os.listdir('d:/')
# listRs 返回的是一个列表,如果要遍历要列表,使用 for 循环,如下
for item in listRs:
print(listRs) # 列表中,只是返回了当前D盘的一级目录
方式二 使用 os 模块中的 scandir
,返回一个迭代器对象。由于 scandir 模块返回的是一个迭代对象,需要用 上下文管理器 with
配合使用,以便资源的管理释放
import os
with os.scandir('d:/') as listRs:
for entry in listRs:
print(entry.name)
import os
basePath='d:/'
for entry in os.listdir(basePath): # 遍历
if os.path.isfile(os.path.join(basePath,entry)): # 对路径,和文件名进行拼接,判断是否是文件,才进行输出
print(entry)
import os
basePath='d:/'
for entry in os.listdir(basePath): # 遍历
if os.path.isdir(os.path.join(basePath,entry)): # 对路径,和文件名进行拼接,判断是否是文件目录,才进行输出
print(entry)