python - how - plotly library
¿Cuál es la diferencia entre.one() y.first() (1)
¿Cuál es la diferencia entre one y first métodos en SQLAlchemy?
Query.one() requiere que solo haya un resultado en el conjunto de resultados; es un error si la base de datos devuelve 0 o 2 o más resultados y se generará una excepción.
Query.first() devuelve el primero de un conjunto de resultados potencialmente más grande, o None si no hubo resultados. No se levantará ninguna excepción.
De la documentación para Query.one() :
Devuelve exactamente un resultado o genera una excepción.
y de Query.first() :
Devuelva el primer resultado de esta Consulta o Ninguno si el resultado no contiene ninguna fila.
(énfasis mío).
En términos de una lista de Python, one() sería:
def one(lst):
if not lst:
raise NoResultFound
if len(lst) > 1:
raise MultipleResultsFound
return lst[0]
mientras que first() sería:
def first(lst):
return lst[0] if lst else None
También hay un método Query.one_or_none() , que genera una excepción solo si hay varios resultados para la consulta. De lo contrario, devolverá el resultado único o None si no hubo resultados.
En términos de lista, eso sería el equivalente de:
def one_or_none(lst):
if not lst:
return None
if len(lst) > 1:
raise MultipleResultsFound
return lst[0]