Конвертировать список строк в словарь - PullRequest
0 голосов
/ 21 сентября 2018

Я хотел бы преобразовать список строк в словарь.

Список выглядит так после того, как я разделил его на отдельные слова:

[['ice'], ['tea'], ['silver'], ['gold']]

Который я хочупреобразовать в словарь, который выглядит так:

{ 1 : ['i', 'c', 'e'] 
  2 : ['t','e','a']
  3 : ['s','i','l','v','e','r']
  4 : ['g','o','l','d']}

Это мой код до сих пор:

import itertools

def anagram1(dict):
    with open('words.txt', 'r') as f:
        data = f.read()

        data = data.split()

        x = []

        y = []

        for word in data:
                x1 = word.split()
                x.append(x1)

        for letters in word:
            y1 = letters.split()
            y.append(y1)
            d = dict(itertools.zip_longest(*[iter(y)] * 2, fillvalue=""))

На что я получаю следующую ошибку:

TypeError: 'dict' object is not callable

Ответы [ 2 ]

0 голосов
/ 21 сентября 2018
import pprint
l = [['ice'], ['tea'], ['silver'], ['gold']]
d = {idx: list(item[0]) for idx, item in enumerate(l, start =1)}
pprint.pprint(d)
{1: ['i', 'c', 'e'],
 2: ['t', 'e', 'a'],
 3: ['s', 'i', 'l', 'v', 'e', 'r'],
 4: ['g', 'o', 'l', 'd']}
0 голосов
/ 21 сентября 2018

Следующие должны сделать работу:

with open('file.txt', 'r') as f:
    data = f.read()

data = data.split()

data_dict = {i:v for i,v in enumerate(data)}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...