Tengo un diccionario, lleno de elementos. Quiero echar un vistazo a un artículo único y arbitrario:Manera pitónica de acceder al elemento arbitrario del diccionario
print "Amongst our dictionary's items are such diverse elements as: %s" % arb(dictionary)
No me importa qué artículo. No es necesario que sea aleatorio.
Se me ocurren muchas formas de implementar esto, pero todas parecen ser un desperdicio. Me pregunto si alguno de los idiomas preferidos en Python, o (incluso mejor) si me falta uno.
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
Estoy en una posición en la que el rendimiento no es lo suficientemente importante que esto es importante (aún), por lo que pueden ser acusados de optimización prematura, pero estoy tratando de mejorar mi estilo de programación Python, por lo que si hay una variante fácilmente comprensible, sería bueno adoptarla.
¿Qué pasa con 'dictionary.itervalues (). Next()'? Eso sería al menos mejor que tu segunda función 'arb'. – srgerg
@sgerg Iba a presentar eso, pero sigue adelante. : D – jamylak
¿Tienen que ser elementos diferentes en la llamada?Todos estos devolverán el mismo artículo ... –