Есть ли способ прочитать n текстовых файлов в папке и сохранить их как переменную n str? - PullRequest
0 голосов
/ 29 марта 2019

Я хочу прочитать N количество текстовых файлов в папке и сохранить их как N количество переменных. Обратите внимание, что вводом будет просто путь к папке, а количество текстовых файлов в нем может варьироваться (поэтому n).

Вручную я делаю это, как показано ниже, код, который необходимо полностью изменить:

import os
os.chdir('C:/Users/Documents/0_CDS/fileread') # Work DIrectory

#reading file
File_object1 = open(r"abc","r")
ex1=File_object1.read()
File_object2 = open(r"def.txt","r")
ex2=File_object2.read()
File_object3 = open(r"ghi.txt","r")
ex3=File_object3.read()
File_object4 = open(r"jkl.txt","r")
ex4=File_object4.read()
File_object5 = open(r"mno.txt","r")
ex5=File_object5.read()

Ответы [ 2 ]

0 голосов
/ 29 марта 2019

Если вас не интересуют имена файлов и только содержимое, а в директории есть только файлы

from os import listdir


l = [open(f).read() for f in listdir('.')]
0 голосов
/ 29 марта 2019

Вы можете использовать встроенный в Python dict.Здесь я указываю только ключи каждого входа в качестве имени файла, вы можете называть их по своему усмотрению.

import os 
path = 'Your Directory'
result_dict = {}
for root, dirs, files in os.walk(path):
    for f in files:
       with open(os.path.join(path,f), 'r') as myfile:
          result_dict[f] = myfile.read()
...