У меня есть код, работающий над чтением значений одного текстового файла, но у меня возникают трудности с чтением всех файлов из всех каталогов и объединением всего содержимого.
Вот что у меня есть:
filename = '*'
filesuffix = '*'
location = os.path.join('Test', filename + "." + filesuffix)
Document = filename
thedictionary = {}
with open(location) as f:
file_contents = f.read().lower().split(' ') # split line on spaces to make a list
for position, item in enumerate(file_contents):
if item in thedictionary:
thedictionary[item].append(position)
else:
thedictionary[item] = [position]
wordlist = (thedictionary, Document)
#print wordlist
#print thedictionary
обратите внимание, что я пытаюсь вставить подстановочный знак * в имя файла, а также подстановочный знак для суффикса файла. Я получаю следующую ошибку:
"IOError: [Errno 2] Нет такого файла или каталога: 'Test / .'"
Я не уверен, что это вообще правильный способ сделать это, но кажется, что если я каким-то образом заставлю подстановочные знаки работать - это должно сработать.
У меня заработал этот пример: Python - чтение файлов из каталога файл, не найденный в подкаталоге (который там находится)
Это немного отличается - но я не знаю, как обновить его, чтобы прочитать все файлы. Я думаю, что в этом начальном наборе кода:
previous_dir = os.getcwd()
os.chdir('testfilefolder')
#add something here?
for filename in os.listdir('.'):
Что мне нужно добавить что-то там, где у меня есть внешний цикл for, но я не совсем знаю, что в него вставить ...
Есть предположения?