我在系统中打开了两个文件。用户提供一些输入,然后脚本选择要关闭的文件。 我必须关闭其中一个文件。
但是,我稍后会有一个for循环。由于我不知道哪个文件将保持打开状态,并且我需要迭代其中一个文件的行和列,我想知道是否有一种方法可以动态放置迭代器(这将是文件)。
以下是代码:
with open("file1.csv","r") as a, open ("file2.csv","r") as b:
read_file_no_1 = csv.reader(a); read_file_no_2 = csv.reader(b)
Question=input(Questions[0]).title()
if Question =='something': read_file_no_1.close()
elif Question == 'something_else': read_file_no_2.close()
else: print("Nul")
for i,x,y in zip(range(1,23),read_file_no_2,_file_no_1):
Question=input(Questions[i].format(Question,x))
if any(iterator in Question.split() for iterator in (x,y)):
print(Question)
else:
print("{} {}".format(str(Question),"unknown")
非常感谢任何帮助。
谢谢。
主芯片
修改
我上传了整个代码。它并不漂亮,它意味着要成为一个概念证明。
答案 0 :(得分:0)
仅在用户选择后创建csv对象:
with open("file1.csv","r") as a, open ("file2.csv","r") as b:
Question=input(Questions[0]).title()
if Question =='something':
r = csv.reader(b)
a.close()
elif Question == 'something_else':
b.close()
r = csv.reader(a)
else:
r = csv.reader(other)
for i,x,y in zip(range(1,23), r):