У меня есть два файла, открытых в системе. Пользователь вводит некоторый ввод, а затем скрипт выбирает, какой файл закрыть. Я должен закрыть один из файлов.Python 3 - только переименовывать файлы, которые в настоящее время открыты
Тем не менее, у меня есть цикл позже. Поскольку я не знаю, какой из файлов останется открытым, и мне нужно перебирать строки и столбцы одного из них, мне было интересно, есть ли способ, которым я мог бы динамически разместить итератор (который был бы файл).
Вот код:
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")
Любая помощь будет оценена.
спасибо.
Мастер-чип
Edit:
Я загрузил весь код. Это некрасиво, это должно быть доказательством концепции.
Я не понимаю почтовый логики вообще, что такое '' read_file_no_2' NAND read_file_no_1'? –
Это не «код». Это ** часть ** кода. Я не вижу там никакого файла или операций для закрытия файла. Пожалуйста, дайте более полный пример того, что вы делаете, ваше попытка решения и то, как он «не работает». – Bakuriu
read_file_no_1 и 2 являются файлами. Часть диапазона предназначена только для того, чтобы выбрать соответствующий элемент из списка. –