выход:

тим, я создал 3 списка и хочу создать для него словарь. например

a= ['A', 'B', 'C', 'D']
b =[1, 2, 3, 4]
c = [9, 8, 7, 6]

Теперь я хочу создать словарь:

{'A':{'1' :'9'} , 'B':{'2':'8'}, 'C':{'3':'7'} , 'D':{'4':'6'}}

Может ли кто-нибудь помочь мне в этом?

 Georgy18 янв. 2019 г., 11:29

Ответы на вопрос(1)

Вы можете создать словарь изzipсписки и преобразовать значения int в строки - если я правильно понял ваш вопрос

dct = {x: {str(y): str(z)} for x, y, z in zip(a,b,c)}

Выход:

{'A': {'1': '9'}, 'C': {'3': '7'}, 'B': {'2': '8'}, 'D': {'4': '6'}}
 atru22 дек. 2017 г., 18:01
@RoadRunner переключился. Спасибо за ответ :)
 atru22 дек. 2017 г., 18:39
@RoadRunner Спасибо :)
 RoadRunner22 дек. 2017 г., 17:56
Почему бы не что-то чище, как это:dct = {x: {y: z} for x, y, z in zip(a,b,c)}?
 RoadRunner22 дек. 2017 г., 18:09
Не беспокойся, просто вопрос предпочтений. Я проголосовал независимо.
 atru22 дек. 2017 г., 17:57
Интересно, это действительно чище? Для меня это выглядит более читабельным, когда у меня есть один х, который я индексирую, как здесь. Так как я все еще новичок в python, я открыт для предложений;) :) Кажется, люди согласны, так что это должно быть чище :)

Ваш ответ на вопрос