Python - чтение файлов и добавление данных в список - PullRequest
0 голосов
/ 10 апреля 2020

Проблема в том, что я хочу прочитать много файлов из папки и добавить данные в 2D-список.

Давайте, у меня в папке будут следующие два txt-файла

Первый файл fruits.txt со следующим содержимым:

apple
orange
banana

Второй файл colors.txt со следующим содержимым:

yellow
blue

Теперь я хочу добавить данные из fruits.txt и colors.txt в список 2D, как показано ниже:

myList[fruits][apple]
myList[fruits][orange]
myList[fruits][banana]
myList[colors][yellow]
myList[colors][blue]

As Вы можете видеть в первом измерении имя файла, а во втором измерении - строку из файла.

Не уверен, как это можно реализовать, и лучше ли добавлять данные в словарь

1 Ответ

3 голосов
/ 10 апреля 2020

Так это то, что вы хотите?

with open("fruits.txt",'r') as f:
    fruits = f.read().split("\n")

with open("colors.txt","r") as f:
    colors = f.read().split("\n")

Result = {'fruits':fruits,'colors':colors}
# {'fruits': ['apple', 'orange', 'banana'], 'colors': ['yellow', 'blue']}

Или если вы хотите прочитать все файлы в текущем каталоге. Структура вашей папки:

- Yourfolder
   - fruits.txt
   - colors.txt
.....

Вы можете использовать модуль glob для чтения всех файлов *.txt:

import glob

Result = {}
for name in glob.glob("*.txt"):
    with open(name,'r') as f:
        Result[name.split(".")[0]] = f.read().strip().split("\n")

print(Result)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...