Python donde está en la lista

Python donde está en la lista

El método Where () en Python se usa para verificar una condición particular en cada elemento de una matriz y luego elegir un valor respectivo que se coloque en el índice de ese elemento dependiendo del resultado de la condición. Sin embargo, para aplicar el "dónde()Método "En una lista, la lista debe convertirse primero en una matriz

El método "Where ()" no es un método integrado del lenguaje de Python, en realidad pertenece al paquete "Numpy". Para comprender el funcionamiento del método "Where ()", eche un vistazo a su sintaxis:

Sintaxis del método "where ()"

La sintaxis del método "where ()" se puede demostrar como:

notario público.donde (condición, valor1, valor2)

En la sintaxis anterior:

  • condición para ser verificado en cada elemento de la lista dentro del método Where ()
  • valor1: se colocará si la condición definida en el método where () rendimiento verdadero
  • valor2: para ser utilizado si el método de la condición donde () produce el método FALSO

información adicional

Para el método "Where ()", los siguientes aspectos son importantes y deben seguirse

  • El value1 y el valor2 son parámetros opcionales. Sin embargo, se proporcionan ambos o ninguno.
  • Los parámetros Value1 y Value2 pueden ser un valor estático, cadena estática o matriz. Sin embargo, si estos valores son una matriz, entonces la forma y el tamaño de la matriz deben coincidir con la matriz en la condición

Ejemplo 1: Obtenga elementos que coincidan con la condición

En este primer ejemplo, tomará una lista y obtendrá solo aquellos elementos que coinciden con una determinada condición. Para hacer esto, primero, cree una lista y use la siguiente línea:

importar numpy como np
Números = (1,66,2,23,91,14,51,47)

La tarea es solo elegir los elementos que tienen un valor superior a "50", para eso, convertir la lista en una matriz y luego usar la siguiente condición en el método "Where ()":

matriz = np.matriz (números)
resultado = (NP.donde (matriz> 50))

Por último, imprima el resultado en el terminal:

Imprimir (resultado)

El fragmento de código completo para este ejemplo es como:

importar numpy como np
Números = (1,66,2,23,91,14,51,47)
matriz = np.matriz (números)
resultado = (NP.donde (matriz> 50))
Imprimir (resultado)

Al ejecutar este código, puede ver que la salida es:

La salida muestra los valores de "índice" del elemento que cumplen con la condición en el método "where ()".

  • Índice 1 = 66
  • Índice 4 = 91
  • Índice 6 = 51

Ejemplo 2: proporcionar ambos casos para la condición

En este ejemplo, proporcionará ambas acciones que se realizarán dependiendo del resultado producido por la condición. Para demostrar esto, tome las siguientes marcas de los estudiantes en una cierta materia:

importar numpy como np
puntajes = (52,46,91,33,52,67,51,47)

Después de eso, aplique las condiciones de que si la puntuación del estudiante es mayor de 50 años, otorgue al alumno el estado de "pasar", de lo contrario "fallar"

matriz = np.matriz (puntajes)
resultado = (NP.donde (matriz> 50, "pasar", "fallar"))

Después de eso, muestre ambos de la lista, el original y el resultado, en el terminal utilizando las siguientes líneas de código:

Imprimir ("Lista original:", puntajes)
Imprimir ("Veredicto:", resultado)

El fragmento de código completo para este ejemplo sería:

importar numpy como np
puntajes = (52,46,91,33,52,67,51,47)
matriz = np.matriz (puntajes)
resultado = (NP.donde (matriz> 50, "pasar", "fallar"))
Imprimir ("Lista original:", puntajes)
Imprimir ("Veredicto:", resultado)

Ejecutar este código producirá el siguiente resultado en el terminal:

Ejemplo 3: Uso de matrices como condición

En este ejemplo, realice la condición en su lista y, según esa condición, elija el valor de la matriz en el segundo parámetro del método Where () o la matriz en el tercer parámetro.

Comience por importar el paquete Numpy y luego cree una lista utilizando las siguientes líneas:

importar numpy como np
puntajes = (52,46,91,33,52,67,51,47)

Si el valor es mayor que 50, tome el valor de la matriz del segundo parámetro, y si es más bajo, use la matriz en el tercer parámetro:

matriz = np.matriz (puntajes)
resultado = (NP.donde (matriz> 50 ,
[1,2,3,4,5,6,7,8],
[11,12,13,14,15,16,17,18]))

Y finalmente, imprima las matrices en la terminal:

Imprimir ("Lista original:", puntajes)
Imprimir ("Nueva lista:", resultado)

El fragmento de código completo para este ejemplo es como:

importar numpy como np
puntajes = (52,46,91,33,52,67,51,47)
matriz = np.matriz (puntajes)
resultado = (NP.donde (matriz> 50 ,
[1,2,3,4,5,6,7,8],
[11,12,13,14,15,16,17,18]))
Imprimir ("Lista original:", puntajes)
Imprimir ("Nueva lista:", resultado)

Este código produce el siguiente resultado en el terminal:

Desde la salida, se puede ver que para cada elemento superior a 50, el nuevo valor es inferior a 10 (segundo parámetro), y para cada elemento inferior a 50, el nuevo valor ahora es mayor que 10 (tercer parámetro)

Ejemplo 4: Operaciones de realización basadas en la condición

En este ejemplo, tome la siguiente lista:

importar numpy como np
Lista = (1,2,3,4,5,6,7,8,9)

Si el elemento es uniforme, tómelo como es, si es extraño, multiplíquelo con 10 usando:

matriz = np.lista de arreglo)
resultado = (NP.donde (matriz %2 == 0, matriz, matriz*10)

E imprima el resultado en el terminal:

Imprimir ("Lista original:", lista)
Imprimir ("Nueva lista:", resultado)

El fragmento de código completo para este ejemplo es este:

importar numpy como np
Lista = (1,2,3,4,5,6,7,8,9)
matriz = np.lista de arreglo)
resultado = (NP.donde (matriz %2 == 0, matriz, matriz*10)
Imprimir ("Lista original:", lista)
Imprimir ("Nueva lista:", resultado)

Ejecutar este fragmento de código mencionado anteriormente producirá el siguiente resultado:

La salida confirma que cada elemento impar se multiplicó por 10.

Conclusión

El "dónde()"El método actúa como una especie de filtro que filtra el elemento dependiendo de la condición, y en base a esta condición puede realizar acciones en el elemento. Para usar el método "Where ()", el usuario necesita importar la biblioteca Numpy como el método "Where ()" no es un método incorporado de Python. Además, la lista debe convertirse en una matriz Numpy antes de aplicar el método Where ().