|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- import os
- import os.path
- import shutil
- #获取文件名
- def getfilelist(dir,filelist):
- newdir = dir
- if os.path.isfile(dir):
- filelist.append(dir)
- elif os.path.isdir(dir):
- for s in os.listdir(dir):
- newdir = os.path.join(dir,s)
- getfilelist(newdir,filelist)
- return filelist
- #复制文件到指定文件夹
- def copyfiles(filename,destination):
- file_path,file_name = os.path.split(filename)
- if not os.path.exists(destination):
- os.makedirs(destination)
- shutil.copy(filename, destination + file_name)
- print('copy%s -->%s' %(filename, destination + file_name))
- filedir = 'D:\\桌面\\学习\\'
- list = getfilelist(filedir,[])
- dst = 'D:\\桌面\\学习\\重要\\'
- n = 0
- for i in list:
- b = i.find('重要')
- if b > 0:
- copyfiles(i,dst)
- n += 1
- print(n)
复制代码
将桌面下的学习文件里面文件名带重要的文件复制过去,可是输出的n是41,打印的复制信息也是41个,可为什么文件夹里只复制过来了34个文件,我对比了前后文件夹,少了7个文件不知道到哪里去了。这是为什么啊。
本帖最后由 qq1151985918 于 2021-1-11 11:46 编辑
你给 31/32行 copyfiles(i,dst) 和 n += 1之间加一个print(i)不就知道缺的那个去哪里了么,盲猜,缺的应该是相同的文件名的文件,例如 \重要\a.py 和 \重要\文件夹\a.py
|
|