Nwlapcug.com


Come sostituire i numeri interi negativi in una matrice di Python

In Python, creare matrici con la dichiarazione di un tipo di dati utilizzando un carattere come un typecode, quindi inizializzare la matrice. Se si dispone di una matrice di valori integer, puoi cercare e sostituire i valori in esso che non volete. Classe array di Python non ha un metodo incorporato per sostituire i valori esistenti nelle matrici, ma è possibile aggirare il problema utilizzando loop per controllare i valori da una matrice esistente e aggiungendole in una nuova. Prima, però, verificare se i valori sono numeri interi negativi e in questo caso, sostituirli.

Istruzioni

1

Aprire un file di programma Python e digitare il seguente codice:

dall'importazione di matrice *

Questa linea consente di importare la classe array nel programma quindi è possibile creare e modificare le matrici.

2

Digitare il seguente codice:

def replaceArray (ar):

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

--> per io in ar:

-->--> se io < 0:

-->-->--> newArray.append(0)

-->--> altro:

-->-->--> newArray.append(i)

--> ritorno newArray

Ricordati di far rientrare correttamente. Ogni "->" indica un trattino, se è utilizzare spazi o tabulazioni per farlo. La prima riga crea una funzione denominata "replaceArray" che accetta una matrice come parametro. La seconda riga crea una nuova matrice per copiare i valori da quella vecchia. La terza riga inizia un ciclo per scorrere ogni elemento della matrice. Durante questa operazione, il quarto attraverso linee settimo controllare per vedere se l'elemento corrente è un numero intero negativo. Se è così, sostituisce con zero e lo aggiunge alla nuova matrice. In caso contrario, aggiunge solo tale valore nella nuova matrice. È possibile sostituire i numeri interi negativi con qualcos'altro che hai bisogno. L'ultima riga restituisce la nuova matrice con i valori sostituiti.

3

Salvare il file di programma Python ed eseguirlo nell'ambiente di shell Python.

4

Digitare il seguente codice:

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

myArr = replaceArray(myArr)

La prima riga crea una matrice con numeri interi positivi e negativi in esso. Potrebbe essere già una matrice creata altrove nel programma. La seconda linea sovrascrive tale matrice passandolo alla funzione creata che scambia fuori numeri interi negativi con zeri. I nuovi valori "[1, 0, 3, 0, 5]" sono ora nella matrice "myArr".

Consigli & Avvertenze

  • La funzione di "replaceArray" funziona anche se si passa un elenco ad esso, ma ancora restituisce una matrice. Per sostituire i numeri interi negativi in un elenco, copiare la funzione di "replaceArray" ma modificarne il nome in "replaceList." Inoltre, modificare il "newArray = array('i',[])" linea a "newList = []" e tutte le istanze di "newArray" a "nuovaLista" nella funzione di swap.