标题: [问题求助] python遍历文件遇到的问题 [打印本页]
作者: netdzb 时间: 2020-5-26 16:49 标题: python遍历文件遇到的问题
def getFiles(dir, suffix): # 查找根目录,文件后缀
res = []
for root, directory, files in os.walk(dir): # =>当前根,根下目录,目录下的文件
for filename in files:
name, suf = os.path.splitext(filename) # =>文件名,文件后缀
if suf == suffix:
res.append(os.path.join(root, filename)) # =>吧一串字符串组合成路径
return res
for file_path in getFiles("./", '.png'): # =>查找以.png结尾的文件
# img1=Image.open(file_path)
print(file_path)
当前路径有很多png文件,同时有个子目录101-1,里面也有很多png文件。
我的这段代码会把当前目录下的png和子文件夹的101-1全部列出来的。
如何修改代码,我只要列出当前路径下的png文件,谢谢!
作者: ivor 时间: 2020-5-26 20:08
os.listdir(path='.') 替换 os.walk()
https://docs.python.org/3.8/library/os.html#os.listdir
作者: Gin_Q 时间: 2020-5-26 22:22
复制代码
作者: Gin_Q 时间: 2020-5-26 22:24
本帖最后由 Gin_Q 于 2020-5-26 23:16 编辑
我正好也需要,拿去自己改改!- #!/usr/bin/env python3
- #coding=utf-8
-
- import os
- import time
- import shutil
-
-
- #禁止访问目录列表
- stop = ['837761056','1289832516','1551961057']
- #指定复制文件列表
- filetype = ['.mp4','.avi']
- #复制或移动目标目录
- dstdirs = r'd:\\'
-
- for root,dirname,filename in os.walk(os.getcwd()):
- print('当前目录为:',root)
- #print('当前目录文件夹有:',dirname)
- #print('当前文件有:',filename)
- #获取当前目录文件不递归
- #dirname.clear()
- #排除指定目录
- for i in stop:
- if i in dirname:
- dirname.remove(i)
-
- for i in (os.path.join(root,name) for name in filename):
- #print('完整文件路径: ',i,(os.path.getctime(i)))
- for ft in filetype:
- if ft in i:
- print('正在复制:\n',i,'--->>>',dstdirs)
- #复制
- shutil.copy(i,dstdirs)
- #print('正在移动:\n',i,'--->>>',dstdirs)
- #移动
- #shutil.move(i,dstdirs)
-
- print('Done!')
- os.popen('pause')
复制代码
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |