@yternoxs

Как вывести нужную пару из словаря?

пусть будет
administration = {'Owner':'Дмитрий', 'Editor':'Михаил', 'PR manager':'Оксана'}


надо вывести первую и последнюю пару, как это сделать?
  • Вопрос задан
  • 71 просмотр
Решения вопроса 2
@bacon
хоть с 3.5 словари и стали сохранять порядок записей, но в общем случаи это неупорядоченная структура
{'Owner':'Дмитрий', 'Editor':'Михаил', 'PR manager':'Оксана'} == {'Editor':'Михаил', 'PR manager':'Оксана', 'Owner':'Дмитрий'}
Ответ написан
fox_12
@fox_12 Куратор тега Python
Расставляю биты, управляю заряженными частицами
В общем случае - так:
from collections import OrderedDict
administration = OrderedDict({'Owner':'Дмитрий', 'Editor':'Михаил', 'PR manager':'Оксана'})

list(administration.items())[0]
list(administration.items())[-1]
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@Kra1ven
Если известно точное количество ключей, то можно таким образом.
administration = {0: {'Owner':'Дмитрий'}, 1:{'Editor':'Михаил'}, 2:{'PR manager':'Оксана'}}
print(administration[0]["Editor"])
print(administration[2]["PR manager"])

Однако так не делается, никто не выводит по индексам значения в словаре. Используются ключи. Если действительно нужна индексация. То проще завести массив. По сути массив и есть словарь, где ключ является индексом.

Вот пример
data = ['Дмитрий', 'Михаил', 'Оксана']
print(data[0])
print(data[-1])


Или так
data = ['Owner:Дмитрий', 'Editor:Михаил', 'PR manager:Оксана']
print(data[0].split(":")[1])
print(data[-1].split(":")[1])
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы