Necesito cargar una lista de objetos de fila de base de datos en la memoria, y luego tomar una de esas filas por su ID único. ¿Hay una manera limpia y pitonica de encontrar un solo objeto de una lista por un valor de atributo? ¿O solo hago un bucle y comparo?Obtener lista elemento por atributo en Python
Respuesta
Sí, bucle y compara:
items = [item for item in container if item.attribute == value]
y obtiene nuevamente una lista que puede ser probado para ver cuántos has encontrado.
Si va a hacer esto mucho, considere el uso de un diccionario, donde la clave es el atributo que le interesa.
Puede filter:
matches = filter(lambda obj: obj.attribute == "target value", myListOfObjects)
Remítase a la respuesta de Kindall para el asesoramiento sobre la eficiencia. Si estás haciendo esto mucho, no es el camino correcto.
¿cuál sería la forma correcta de hacerlo de manera eficiente? Gracias. – moeseth
Si hace esto sólo da el primer partido, en lugar de comparar la lista completa: find first sequence item that matches a criterion.
Si haces algo como esto, usted no tiene que coger la excepción sino conseguir None
lugar:
item = next((i for i in items if i == 'value'), None)
- 1. Obtener atributo del elemento hijo
- 2. ¿Hay alguna forma de obtener XML de elemento por atributo?
- 3. Obtener atributo model por attribute_code en Magento
- 4. modificar elemento de lista con comprensión de lista en python
- 5. jquery v1.3.2 buscar elemento por atributo
- 6. Obtener un valor de atributo en el elemento xml
- 7. Python lista por comprensión
- 8. XPath para obtener otro atributo por id. Atributo
- 9. Richfaces - Obtener elemento por Id
- 10. ¿Cómo obtener un elemento por su href en jquery?
- 11. Obtener elemento por título jQuery
- 12. Javascript, CSS: Obtener elemento de atributo de estilo
- 13. C++ Structs: obtener el atributo por nombre
- 14. ¿Cómo encontrar elemento por valor de atributo en GPath?
- 15. jQuery analizando XML: obtener un elemento con un atributo específico
- 16. Python: Obtener el índice del elemento de diccionario en la lista
- 17. Lista <> Obtener elemento siguiente u obtener el primer
- 18. ¿Cómo obtener el índice y el elemento de la lista simultáneamente en Python?
- 19. ¿Cómo agrupar una lista de tuplas/objetos por índice/atributo similar en python?
- 20. cómo seleccionar un objeto de una lista de objetos por su atributo en python
- 21. Cómo obtener el atributo variable en d3
- 22. Prueba del elemento en lista
- 23. Obtener una lista de opciones de atributo de Magento
- 24. ¿Cómo obtener una lista de propiedades con un atributo determinado?
- 25. Cómo iterar sobre una lista repitiendo cada elemento en Python
- 26. Python: Reemplazar un elemento en una lista de listas (# 2)
- 27. Python slice primer y último elemento en la lista
- 28. creando una lista por defecto en python
- 29. python - obtener lista de tuplas primer índice?
- 30. Obtener un valor de un atributo por XPath y HtmlAgilityPack
¿Hay una razón para no hacer esto directamente con una consulta de base de datos? – Avaris
Es solo un ejemplo – Yarin