2017-02-05 2 views
-5

Позволь мне иметь словарь:Как вернуть значение ключа из словаря в Python

P={'S':['dB','N'],'B':['C','CcB','bA']} 

Как я могу получить второе значение уплотнительного второго ключа из словаря P?

Кроме того, если значение представляет собой строку с более чем одним символом типа «bA» (третье значение ключа «B»), могу ли я как-то вернуть первый символ этого значения?

+0

Вы уже что-то пробовали? – Kasramvd

+1

* «второй ключ» * не является понятием, которое имеет смысл - словари не являются упорядоченными структурами данных. Списки и строки * упорядочены и могут быть проиндексированы: ''bA' [0] == 'b'', например. Ознакомьтесь с основами: http://sopython.com/wiki/What_tutorial_should_I_read%3F – jonrsharpe

+0

Приветствуем вас и приветствуем StackOverflow. Укажите пример, который вы уже пробовали, и разделите свой вопрос на два отдельных. – MaLiN2223

ответ

0

Как уже отмечалось, @jonrsharpe, словари не упорядочены по дизайну.

Это означает, что каждый раз, когда вы пытаетесь получить доступ к словарю «по заказу», вы можете столкнуться с другим результатом.

Обратите внимание на следующее (питон интерактивный интерпретатор):

>>>P={'S':['dB','N'],'B':['C','CcB','bA'], 'L':["qqq"]} 
>>>P.keys() 
['S', 'B', 'L'] 

Его легко видеть, что в этом уведомлении, «порядок», как мы определили это, соответствует порядку, который мы получаем от Dictionary.keys ().

Однако, вы можете также наблюдать этот результат:

>>> P={'S':['dB','N'],'B':['C','CcB','bA'], 'L':["qqq"], 'A':[]} 
>>> P.keys() 
['A', 'S', 'B', 'L'] 

В этом примере значение «A» должно быть четвертым в нашем списке, но это на самом деле первое значение.

Это лишь небольшой пример того, почему вы не можете относиться к словарям как к упорядоченным спискам. Возможно, вы могли бы рассказать нам, каковы ваши намерения, и может быть предложена альтернатива.

+0

Извините за то, что я новичок, я нахожусь noob в python. Я изменил свою цель и решил ее. 'P = {} F = {} P = {'S': ['dB', 'N'], 'B': ['C', 'CcB']} для ключа, val in P .items(): для него в val: print (it [0]) F.setdefault (key, []) F [key] .append (it [0]) print (F) ' – Mike