【发布时间】:2019-05-23 19:25:58
【问题描述】:
我正在尝试制作一个程序,它可以抓取特定数据类型的文件夹,在该文件夹中创建一个新文件夹,并在其中复制该数据类型的每个文件。
我已经通过在另一个已经存在的文件夹中复制文件来使其工作,但我想一次性完成所有操作。这是到目前为止的代码:
import glob, os, shutil
def imageSearch(folder):
newFolder = folder + '\\imgCopy'
if not os.path.isdir(newFolder):
os.makedirs(newFolder)
files = glob.iglob(os.path.join(folder, '*.jpg'))
for file in files:
if os.path.isfile(file):
shutil.copy2(file, newFolder)
print('Which folder are you crawling?')
imageSearch(input())
到目前为止没有错误消息,只是没有得到任何新的文件夹或文件。
【问题讨论】:
-
也许您需要
os.walk(folder)来获取原始位置的所有文件夹和子文件夹。 -
考虑将
folder + '\\imgCopy'更改为os.path.join(folder,'imgCopy')。使用此方法不是强制性的,如果您在一个操作系统上工作,斜杠\反斜杠可以工作,但如果您在路径中同时使用斜杠\反斜杠和os.path.join,代码看起来有些不一致 -
@Daweo 完全同意,在我的回答中使用了这个
标签: python python-3.x