如何解决如何使用python将多个文件从子目录传输到单个路径文件夹?
2003211085_2003211078_ffc0d543799a2984c60c581d.wav
2003214817_2003214800_92720fb19bf9216c2f160733.wav
2003233142_2003233136_8c42d206701830dff6032d41.wav
2003256235_2003256218_4e71bf77b0ffb907990d2e30.wav
2003276239_2003276196_dad6aff70f37817fcd75ffb8.wav
2003352182_2003352170_b1f2990d5f867408cc39c445.wav
有一个名为 \019\Recordings 的目录,其中所有这些文件都位于各个子文件夹下。 我想编写一个 python 应用程序,根据所有这些子文件夹中的唯一名称提取这些 wav 文件,并将它们放入单个目标文件夹中。
我是 Python 新手并尝试使用 -
import glob,os
import shutil
target_list_of_wav_names = ["2003211085_2003211078_ffc0d543799a2984c60c581d.wav","2003214817_2003214800_92720fb19bf9216c2f160733.wav","2003233142_2003233136_8c42d206701830dff6032d41.wav"
"2003352182_2003352170_b1f2990d5f867408cc39c445.wav"]
for file in glob.glob('//19/Recordings*.wav',recursive=True):
print(file)
if file in target_list_of_wav_names:
shutil.move(file,"C:/Users/ivd/Desktop/autotranscribe"+file)
我该如何解决这个问题?
解决方法
import glob,os
import shutil
target_list_of_wav_names = ['example_wav1.wav','example_wav2.wav',...... etc]
for file in glob.glob('/019/Recordings/*.wav',recursive=True):
print(file)
if file in target_list_of_wav_names:
shutil.move(file,"/mydir/"+file)
,
glob 只是一个基于通配符查找文件的实用程序。它返回与您的查询匹配的文件字符串。
因此您仍然需要使用另一个函数实际移动文件。
您可以使用 os.rename
或 shutil.move
来移动它
for file in glob.glob("*.wav"):
os.rename(file,f'destinationfolder/{file}')
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。