Найти - Пользователи
Полная версия: Dictionary: сравнение имени ключа со строкой
Начало » Python для новичков » Dictionary: сравнение имени ключа со строкой
1
ValeriyB
Привет.

Допустим есть словарь и переменая:

dic_xxx = {'test' : 1, 'gogo' : 2, 'other' : 3}
peremennaya =  "gogo"

Как мне сравнить строку переменной с именем ключа
dic_xxx['gogo']
на совпадение? Индекс не известен, нужно именно по имени ключа.



fata1ex
>>> d = {'1':10, '2':20, '3':30}
>>> d.keys()
['1', '3', '2']
>>> d.values()
[10, 30, 20]
>>> d.has_key('1')
True
>>> d.has_key('4')
False
>>> d.items()
[('1', 10), ('3', 30), ('2', 20)]

Плюс есть iterkeys/itervalues с говорящими именами. Если я неправильно вас понял, и ответ вам не помог, опишите ситуацию более подробно.

PS. Закралось подозрение, что вы путаете понятия “индекс”, “ключ” и “значение”.
ValeriyB
Не совсем то.
Можно как-нибудь имя конкретного ключа поместить в переменную?
fata1ex
ValeriyB
Можно как-нибудь имя конкретного ключа поместить в переменную?

То есть вы знаете “имя конкретного ключа” и хотите поместить это имя в переменную? Тогда
 variable = key_name
Но, видимо, это не то, что вы хотите.
ValeriyB
Нужно что-то на подобие:

>>> d = {'test' : 1, 'gogo' : 2, 'other' : 3}
>>> variable = d['gogo']
>> variable
gogo
>>>
fata1ex
>>> d = {'test' : 1, 'gogo' : 2, 'other' : 3}
>>> variable = 'gogo'
>>> variable
'gogo'

Сдаётся мне, это опять не то. Не могу никак вас понять.
Попробуем по-другому. Зачем вам это нужно, какую задачу вы решаете?
ValeriyB
Да все просто как 1, 2, 3. Неправильно построил алгоритм и поэтому такой вопрос странный был.
Сейчас все сделал иначе. Вопрос снят. Спасибо за содействие.
fata1ex
Именно поэтому в первом же своем сообщении я написал:
Если я неправильно вас понял, и ответ вам не помог, опишите ситуацию более подробно.
Удачи.
py.user.next
>>> d = {'test' : 1, 'gogo' : 2, 'other' : 3}
>>> v = 'gogo'
>>> v in d
True
>>> d[v]
2
>>>
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB