如何解决从目录访问相同的命名文件
我有两个目录,其中包含具有相同名称的文本文件。尽管文件名相同,但是它们包含不同的数据,我想一次从两个目录访问相同的命名文件,并希望进行一些计算。为了进行测试,我编写了以下代码,但是循环一次无法访问相同的命名数据文件。它从两个目录中选择了随机文本文件。有人可以建议我如何通过以下代码访问相同的命名文件吗?
nb:我必须访问近1000个文件
import glob
data1=glob.glob('/home/liu/Music/datafiles1/*.txt')
data2=glob.glob('/home/liu/Music/datafiles2/*.txt')
for files in data:
print(files)
for file in data2:
print(file)
解决方法
您知道dir2
中的文件名与dir1
中的文件名相同,因此您无需列出两个目录。只需将找到的文件名附加到第二个目录即可。
from pathlib import Path
dir1 = Path('/home/liu/Music/datafiles1')
dir2 = Path('/home/liu/Music/datafiles2')
for filepath1 in dir1.glob('*.txt'):
filepath2 = dir2 / filepath1.name
print(filepath1,filepath2)
,
您是要写:
import glob
data1=glob.glob('/home/liu/Music/datafiles1/*.txt')
data2=glob.glob('/home/liu/Music/datafiles2/*.txt')
for files in zip(data1,data2):
f1,f2 = files
print(f1,f2)
您的嵌套循环方案意味着data2
变得筋疲力尽。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。