У меня есть словарь, полный предметов. Я хочу заглянуть за один, произвольный элемент:
print "Amongst our dictionary items are such diverse elements as: %s" % arb(dictionary)
Мне все равно, какой предмет. Это не обязательно быть случайным.
Я могу думать о многих способах реализации этого, но все они кажутся расточительными. Я задаюсь вопросом, являются ли какие-либо предпочтительные идиомы в Python или (даже лучше), если я не хватает одного.
def arb(dictionary):
# Creates an entire list in memory. Could take a while.
return list(dictionary.values())[0]
def arb(dictionary):
# Creates an entire interator. An improvement.
for item in dictionary.itervalues():
return item
def arb(dictionary):
# No iterator, but writes to the dictionary! Twice!
key, value = dictionary.popitem()
dictionary[key] = value
return value
Я нахожусь в положении, когда производительность недостаточно критична, что это имеет значение (пока), поэтому меня можно обвинить в преждевременной оптимизации, но я пытаюсь улучшить свой стиль кодирования Python, поэтому, если есть понимал вариант, было бы неплохо принять его.