En cuanto a su primera pregunta, este código está perfectamente bien y debería funcionar si lo hace item
corresponde a uno de los elementos del interior myList
. Tal vez intente encontrar una cuerda que no Exactamente coincidir con uno de los elementos, o utilizar un valor de punto flotante que sufre de inexactitud.
Con respecto a su segunda pregunta: De hecho, hay varias formas de «buscar» cosas en listas.
Comprueba si hay algo ahí
Este es el caso de uso que está describiendo: comprobar si algo está o no en una lista. Como sabes, puedes in
Operador para esto:
3 in [1, 2, 3] # => True
Filtrar una colección
Es decir, encontrar todos los elementos de una secuencia que cumplan una determinada condición. Puede usar la comprensión de listas o expresiones generadoras para esto:
matches = [x for x in lst if fulfills_some_condition(x)]
matches = (x for x in lst if x > 6)
Este último devolverá un generador que puedes considerar como una especie de lista perezosa que se acaba de hacer …