@brrekht

Как преобразовать текст из файла в словарь?

В файле содержится текст:
Foundation|Asimov, Isaac
Foundation and Empire|Asimov, Isaac
Second Foundation|Asimov, Isaac


Нужно привести это к виду:
{'Foundation': 'Asimov, Isaac', 'Foundation and Empire': 'Asimov, Isaac', 'Second Foundation': 'Asimov, Isaac'}


Пробовал так:
with open(f'{filename}', 'r') as s:
        data = s.read()
        for i in data:
            if '|' in i:
                result = dict(enumerate(data.split()))
                return result

но получается только:
{0: 'Foundation|Asimov, Isaac', 1: 'Foundation and Empire|Asimov, Isaac', 2: 'Second Foundation|Asimov, Isaac', 3: 'Dune|Herbert, Frank'}
  • Вопрос задан
  • 78 просмотров
Решения вопроса 1
lxstvayne
@lxstvayne
Люблю Python
data = {}
with open('test.txt') as file:
    for line in file:
        k, v = line.split('|')
        data[k] = v.rstrip()

print(data)
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@LordOftheCode
res = {0: 'Foundation|Asimov, Isaac', 1: 'Foundation and Empire|Asimov, Isaac', 2: 'Second Foundation|Asimov, Isaac', 3: 'Dune|Herbert, Frank'}

slv = {res}

print(slv)

попробуй
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы