python对文件和文件夹的操作列题_python中对文件和文件夹的操作

一、说明

python中主要通过os模块和shutil模块两个模块对文件进行相关操作,移动、复制、删除、重命名。比较大的文件通过命令操作可以节省时间,提高效率。

二、实例对文件夹中文件的拷贝

from multiprocessing import Pool,Manager

import os

#完成拷贝文件

def copyFile(filename,oldname,newname,que):

"拷贝文件函数"

# 三部操作 读取内容,写入内容 关闭

que.put(filename)

br = open(oldname+'/'+filename,'rb')

bw = open(newname+'/'+filename,'wb')

content = br.read()

bw.write(content)

#关闭源文件和目标文件

br.close()

bw.close()

def fun():

#1、提示输入要拷贝的文件名字

oldname = input("请输入你要拷贝的文件夹名字或者路径:")

#2.创建文件夹,存放拷贝内容

newname = oldname + '拷贝内容'

os.mkdir(newname)

#3.获取oldname中的目录和文件名字

filenames = os.listdir(oldname)

print(filenames)

# #4.过滤文件

# filename = solute(filenames)

#利用多进程的方式拷贝数据

po = Pool(5) #进程数量

que = Manager().Queue()

for fileName in filenames:

po.apply_async(copyFile,args=(fileName,oldname,newname,que))

con = 0

allcon = len(filenames)

while True:#用主进程来显示拷贝进度

dd = que.get()

con +=1

print('拷贝进度:%.2f%%'%((con/allcon)*100),end='')

if con==allcon:

print("恭喜你拷贝完成")

break

if __name__=='__main__':

fun()

三、文件、文件夹的移动、复制、删除、重命名函数

导入shutil模块和os模块

import shutil,os

复制单个文件

shutil.copy("C:\\a\\1.txt","C:\\b")

复制并重命名新文件

shutil.copy("C:\\a\\2.txt","C:\\b\\121.txt")

复制整个目录(备份) shutil.copytree("C:\a","C:\b\new_a")

删除文件

os.unlink("C:\\b\\1.txt")

os.unlink("C:\\b\\121.txt")

删除空文件夹

try:

os.rmdir("C:\\b\\new_a")

except Exception as ex:

print("错误信息:"+str(ex))#提示:错误信息,目录不是空的

删除文件夹及内容

shutil.rmtree("C:\\b\\new_a")

移动文件

shutil.move("C:\\a\\1.txt","C:\\b")

移动文件夹

shutil.move("C:\\a\\c","C:\\b")

重命名文件

shutil.move("C:\\a\\2.txt","C:\\a\\new2.txt")

重命名文件夹

shutil.move("C:\\a\\d","C:\\a\\new_d")

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值