Tecnología

Inicio

Cómo reemplazar enteros negativos en una matriz de Python

En Python, se crea matrices por la que se declara un tipo de datos usando un carácter como un código de tipo, entonces inicializar la matriz. Si usted tiene una matriz de enteros con signo, puede buscar y reemplazar los valores en ella que no quieren. clase matriz de Python no tiene un método integrado para sustituir los valores existentes en las matrices, pero se puede evitar mediante el uso de bucles para comprobar los valores de una matriz existente y añadiéndolos en uno nuevo. En primer lugar, sin embargo, comprobar para ver si los valores son números enteros negativos, y si es así, sustituirlos.

Instrucciones

1 Abrir un archivo de programa de Python y escriba el código siguiente:

de tabla de importación *

Esta línea importa la clase matriz en el programa para que pueda crear y editar matrices.

2 Escriba el siguiente código:

def replaceArray (ar):

-> NewArray = array ( 'i', [])

-> For i in ar:

-> -> Si i <0:

-> -> -> NewArray.append (0)

-> -> Otra cosa:

-> -> -> NewArray.append (i)

-> Retorno newArray

Recuerde que debe aplicar sangría correctamente. Cada "->" representa un guión, ya sea que use espacios o tabuladores para hacerlo. La primera línea crea una función llamada "replaceArray" que tiene una matriz como un parámetro. La segunda línea crea una nueva matriz para copiar los valores de la anterior. La tercera línea comienza un bucle para desplazarse por cada elemento de la matriz. Mientras hace esto, el cuarto a través de líneas séptima comprobación para ver si el elemento actual es un entero negativo. Si es así, que la sustituye por cero y lo anexa a la nueva matriz. Si no es así, sólo se añade que el valor de la nueva matriz. Puede sustituir los números enteros negativos con algo más que necesita. La última línea devuelve la nueva matriz con los valores sustituidos.

3 Guarde el archivo de programa Python y ejecutarlo en el entorno de Python.

4 Escriba el siguiente código:

myArr = array ( 'i', [1, -2, 3, -4, 5])

myArr = replaceArray (myArr)

La primera línea crea una matriz con dos números enteros positivos y negativos en el mismo. Puede que ya tenga una matriz creada en otra parte de su programa. La segunda línea sobrescribe esa matriz haciéndolo pasar a la función que ha creado que los enfoques sectoriales a cabo enteros negativos con ceros. Los nuevos valores "[1, 0, 3, 0, 5]" están ahora en la matriz "myArr".

Consejos y advertencias

  • La función "replaceArray" también funciona si se pasa una lista a ella, pero todavía devuelve una matriz. Para sustituir enteros negativos en una lista, copiar la función "replaceArray", pero cambiará su nombre a "replaceList." Además, cambiar el "newArray = array ( 'i', [])" línea de "newList = []" y canje de todas las instancias de "newArray" a "newList" en la función.