Создать новый список из значений словаря

Marina10

Новичок
Пользователь
Апр 29, 2020
12
0
1
Добрый день. Можно ли составить новый список из значений словаря? Например у меня есть словарь dict = { "one": 'word1, word2 #, ', "two" : 'RT @tompycan: #NewYearsResolution on Jan1: 'I\'m really going to get in shape this year!"\n\non Jan3: "I\'m learning to love my body the'}. Мне нужно составить новый список слов из key two. Например new_list = [ 'RT', '@tompycan', 'NewYearsResolution', 'on', 'Jan1'].
 

stud_55

Модератор
Команда форума
Модератор
Апр 3, 2020
1 522
672
113
Мне нужно составить новый список слов из key two
Можно просто взять значение ключа two из словаря и сделать из него список с помощью split:
Python:
dict1 = { "one": 'word1, word2 #, ', "two": 'RT @tompycan: #NewYearsResolution on Jan1: "I\'m really going to get in shape this year!"\n\non Jan3: "I\'m learning to love my body the"'}
lst = dict1['two'].split()
print(lst) # ['RT', '@tompycan:', '#NewYearsResolution', 'on', 'Jan1:', '"I\'m', 'really', 'going', 'to', 'get', 'in', 'shape', 'this', 'year!"', 'on', 'Jan3:', '"I\'m', 'learning', 'to', 'love', 'my', 'body', 'the"']
 

Marina10

Новичок
Пользователь
Апр 29, 2020
12
0
1
Можно просто взять значение ключа two из словаря и сделать из него список с помощью split:
Python:
dict1 = { "one": 'word1, word2 #, ', "two": 'RT @tompycan: #NewYearsResolution on Jan1: "I\'m really going to get in shape this year!"\n\non Jan3: "I\'m learning to love my body the"'}
lst = dict1['two'].split()
print(lst) # ['RT', '@tompycan:', '#NewYearsResolution', 'on', 'Jan1:', '"I\'m', 'really', 'going', 'to', 'get', 'in', 'shape', 'this', 'year!"', 'on', 'Jan3:', '"I\'m', 'learning', 'to', 'love', 'my', 'body', 'the"']
Добрый день. Я попробовала, но мне возвращает ошибку TypeError: 'DictReader' object is not subscriptable
 

stud_55

Модератор
Команда форума
Модератор
Апр 3, 2020
1 522
672
113
возвращает ошибку TypeError: 'DictReader' object is not subscriptable
Вопрос же был про словарь, а не про DictReader:
Можно ли составить новый список из значений словаря?
Со словарем пример выше будет работать.
Чтобы код работал с DictReader`ом нужно сначала получить из него словарь:
Python:
import csv

with open('file.csv') as f:
    reader = csv.DictReader(f)
# в цикле получаем из него словари
for dict1 in reader:
    # выводим каждый словарь в консоль
    print(dict1)
    # если в словаре есть ключ two получаем список из его значения
    if dict1.get('two'):
        lst = dict1['two'].split()
        # выводим список в консоль
        print(lst)
 

Форум IT Специалистов