Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 25, 2012 10:52:13

dimy44
От: Евпатория
Зарегистрирован: 2012-04-21
Сообщения: 463
Репутация: +  42  -
Профиль  

Python 2.6.3 Не могу получить случайные значения из словаря с помощью метода popitem()

Нет. В первом случае Вы получили список списков

[['flourish', 6]]
, где нулевой элемент- список
['flourish', 6]
, а во втором список
['burdamoden', 1]
, где нулевой элемент - строка ‘burdamoden’. Дальнейшее извлечение нулевого и первого элементов из вышеописанного дает полученные Вами результаты.

Офлайн

#2 Ноя. 25, 2012 11:42:37

rudm
От:
Зарегистрирован: 2009-10-27
Сообщения: 64
Репутация: +  0  -
Профиль   Отправить e-mail  

Python 2.6.3 Не могу получить случайные значения из словаря с помощью метода popitem()

GaiveR
>>Не знаю, что вы хотите сделать, но делаете вы это очень странно. Опишите исходную задачу, может, чего лучше посоветуем.
Мне нужно просто в случайном порядке извлекать из кортежа два ключа и сравнивать их значения.
Спасибо, вы мне и так уже очень помогли.



Офлайн

#3 Ноя. 25, 2012 12:27:05

rudm
От:
Зарегистрирован: 2009-10-27
Сообщения: 64
Репутация: +  0  -
Профиль   Отправить e-mail  

Python 2.6.3 Не могу получить случайные значения из словаря с помощью метода popitem()

dimy44
Cпасибо. Теперь понятно.



Офлайн

#4 Ноя. 26, 2012 21:23:09

GaiveR
От:
Зарегистрирован: 2011-08-13
Сообщения: 122
Репутация: +  16  -
Профиль   Отправить e-mail  

Python 2.6.3 Не могу получить случайные значения из словаря с помощью метода popitem()

rudm
Мне нужно просто в случайном порядке извлекать из кортежа два ключа и сравнивать их значения.
В кортеже нет понятия “ключ”.

rudm
Скажите пожалуйста, существуют ли какие то встроенные функции для сравнения значения ключей?
Я не нашел такой функции, поэтому решил, что для моей задачи лучше использовать кортеж с вложенными массивами.
Сравнивать ключи в словаре ничем не хуже, чем сравнивать нечто, представленное в виде кортежа списков.

Давайте рассмотрим задачу на более высоком уровне(опишите) и попробуем подобрать правильную структуру данных для её решения.



Офлайн

#5 Дек. 7, 2012 13:25:18

rudm
От:
Зарегистрирован: 2009-10-27
Сообщения: 64
Репутация: +  0  -
Профиль   Отправить e-mail  

Python 2.6.3 Не могу получить случайные значения из словаря с помощью метода popitem()

GaiveR
Спасибо.
Мы уже определились с окончательной конструкцией - кортежи вложенные в массив. Наверное менять не будем. Я понимаю, что ключ или флаг, в данном случае, это не верное название, но я так называю для удобства.
Описать задачу могу лишь приблизительно. Есть данные в окончательном виде представленные так:

[('key one', 3, 'g'), ('key two', 5, 'n')]
где, вольно выражаясь,
key one - это название ключа (строковый параметр), Различные произвольные названия.
3 - значение (численное значение) Может быть от 0 до… думаю до 9 но пока точно не знаю.
'g' - дополнительный флаг (строковое значение) (может принимать два значения ‘g’ или ‘n’)

Сначала мне необходимо сравнивать значения флагов, на совпадения с заданным сверху (либо g либо n) После чего оставлять в массиве лишь кортежи с одним типом флагов. либо ‘g’ либо ‘n’ в зависимости от заданных условий. После чего необходимо сравнивать численные значения и выводить на печать те, у которых значение максимальное.

Но данные представлены неоднородно, и возникла проблема обработки исключений при выходе за границы кортежа. Но, я наверное создам другую тему для этого. Вот http://python.su/forum/topic/20193/



Отредактировано rudm (Дек. 7, 2012 13:29:36)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version