Как открыть несколько путей к файлам?
Теперь у меня есть файл со списком путей к файлам. Я хочу открыть их, чтобы читать и писать. Кто-нибудь может подсказать, как это сделать? Все, что я видел до сих пор, - это только читать эти строки и распечатывать их, я хочу, чтобы мой код открывал эти пути. Ниже приведен фрагмент файла пути:
E:\Grad\LIS\LIS590 Text mining\Part1\Part1\awards_1994\awd_1994_96\a9496340.txt
E:\Grad\LIS\LIS590 Text mining\Part1\Part1\awards_1994\awd_1994_96\a9496341.txt
E:\Grad\LIS\LIS590 Text mining\Part1\Part1\awards_1994\awd_1994_96\a9496342.txt
E:\Grad\LIS\LIS590 Text mining\Part1\Part1\awards_1994\awd_1994_96\a9496343.txt
E:\Grad\LIS\LIS590 Text mining\Part1\Part1\awards_1994\awd_1994_96\a9496344.txt
E:\Grad\LIS\LIS590 Text mining\Part1\Part1\awards_1994\awd_1994_96\a9496345.txt
E:\Grad\LIS\LIS590 Text mining\Part1\Part1\awards_1994\awd_1994_96\a9496346.txt
E:\Grad\LIS\LIS590 Text mining\Part1\Part1\awards_1994\awd_1994_96\a9496347.txt
E:\Grad\LIS\LIS590 Text mining\Part1\Part1\awards_1994\awd_1994_96\a9496348.txt
E:\Grad\LIS\LIS590 Text mining\Part1\Part1\awards_1994\awd_1994_96\a9496349.txt
E:\Grad\LIS\LIS590 Text mining\Part1\Part1\awards_1994\awd_1994_96\a9496350.txt
E:\Grad\LIS\LIS590 Text mining\Part1\Part1\awards_1994\awd_1994_96\a9496351.txt
...
Это код, который я пытаюсь:
def work_on(r'E:\Grad\LIS\LIS590 Text mining\file+test.txt'): # The last quotation mark gives me that error. I also tried double quotation mark, didn't work either.
with open(r'E:\Grad\LIS\LIS590 Text mining\file+test.txt', 'r') as data_file:
with open('file_list.txt', 'r') as file_list: #file_list.txt is the file name I saved all the paths.
for filename in file_list:
with open(filename, 'r') as data_file:
work_on(filename)
1 ответ
Общий поток будет таким же, как распечатка строк - единственная разница вместо использования print()
Вы будете выполнять другую работу (в этом случае откроете файл и поработаете с ним):
with open('/your/file/list.txt', 'r') as file_list:
for filename in file_list:
with open(filename, 'r') as data_file:
# work with data_file here
Затем вы можете выделить второй фрагмент работы в отдельную функцию, если это имеет смысл:
def work_on(data_file_path):
with open(data_file_path, 'r') as data_file:
# work with data_file here
который затем упростил бы ваш рабочий цикл:
with open('/your/file/list.txt', 'r') as file_list:
for filename in file_list:
work_on(filename)