nested loops and IOError: [Errno 2] No such file or directory:
我正在尝试创建一个执行以下操作的脚本:
第1步:从listofscenarios.txt中读取第1行。 (即,该行读取为100_100字符串)。
第2步:根据该字符串名称,打开具有相应名称的文件(即100_100.txt)
步骤3:从100_100.txt复制第1行并将其粘贴到final.txt的第1行(此文件将包含所有迭代的所有结果)。
步骤4:从步骤1开始并执行相同操作但现在读取下一行(即第2行)。取出之前的字符串名称(即80_80),打开相应的文件,复制第2行,然后将其粘贴到 第2行的final.txt。
到目前为止,我已经完成了以下操作,但它不起作用:
a)虽然文件存在,但我收到此错误消息:IOError:[Errno 2]没有这样的文件或目录:'100_100 n.txt'。 我无法根据类似的帖子进行故障排除
b)除了错误(a)我认为嵌套循环没有按预期工作。
1 2 3 4 5 6 7 8 | with open('listofscenarios.txt',"r") as fp: for scenario in iter(fp.readline, ''): with open("%s.txt" %scenario,"r") as f1: for line in iter(f1.readline, ''): reading = f1.readline() with open("final.txt","w+") as f2: for row in iter(f2.readline, ''): writing = f1.writelines(reading) |
整个解决方案可能看起来像这样,忽略了它是如何Pythonic:
1 2 3 4 5 6 7 8 | fpl = open("final.txt","w") with open('listofscenarios.txt',"r") as fp: for i, scenario in enumerate(iter(fp.readline, '')): scenario = scenario.split(' ')[0] with open("%s.txt" %scenario,"r") as f1: fpl.write(f1.readlines()[i]) fpl.close() |