Problem

11 /11


Elenco generatori

Theory Click to read/hide

Elenco generatori

Il linguaggio Python consente di risolvere molti problemi in modo conciso e affidabile. Elenchiamo le principali possibilità per riempire un array. 1) La creazione e il popolamento di un array può essere scritto in questo modo: A = [i for i in range(N)] # Con N = 5, array A = [0,1,2,3,4] A = [i*i for i in range(N)] # Con N = 5, array A = [0,1,4,9,16] for i in range(N) - scorre tutti i valori i da 0 a N-1.

L'elemento successivo dell'array conterrà il valore che precede la parola for, nel primo caso i, nel secondo - i*i.

Otteniamo lo stesso risultato utilizzando la seguente notazione:
A = lista(intervallo(N)) # con N = 5, array A = [0,1,2,3,4]

2) Puoi scrivere nell'array non tutti i valori, ma solo quelli che soddisfano una certa condizione.
 
Esempio
Riempiendo l'array con tutti i numeri pari nell'intervallo da 0 a 9. A = [i per i nell'intervallo(10) se io % 2 == 0] print(*A) # array A = [0,2,4,6,8] In questo caso, devi capire che la lunghezza dell'array sarà inferiore a 10. 

3) Riempire un array dalla tastiera con elementi che si trovano uno per riga può essere fatto in due modi.
 
N=5 LA = [0]*5 per i nell'intervallo(N): A[i] = int(input())
A = [int(input()) for i in range(N)]
# ogni volta che il ciclo si ripete,
# la stringa di input viene convertita
# a un numero intero (usando int)
# e questo numero viene aggiunto all'array


4) Riempire un array dalla tastiera con elementi che si trovano tutti sulla stessa riga è un po' più complicato. Devi leggere la stringa, dividerla in elementi e quindi convertire ogni elemento in un numero intero s = input().split()  A = [int(i) for i in s]  o giù di lì A = list(map(int, input().split())) # funzione integrata list()   # trasforma la sequenza   # all'elenco mutabile

Uscita matrice

Puoi anche visualizzare un array sullo schermo in diversi modi.
 
Modo standard, utilizzato in molti linguaggi di programmazione. Un tale ciclo può essere scritto più breve. Il valore di х ad ogni passo del ciclo viene riempito con l'elemento successivo dell'array. In Python, puoi scrivere così.
per i nell'intervallo(len(A)): print(A[i], end=" ") per x in A: print(x, end=" ")
stampa(*A)
# segno * davanti al nome
# dell'array significa che
# deve essere convertito
# array in un insieme di singoli valori

Problem

L'input è il numero N - il numero di elementi dell'array. 
Seguono due array di N interi ciascuno:
- gli elementi del primo array vanno uno per riga;
- elementi del secondo array - tutti scritti in una riga separati da uno spazio.
Compila due array e stampa i loro elementi separati da uno spazio in una riga:
- il primo array nella prima riga;
- il secondo array nella seconda riga.
 
Esempi
# Input Uscita
1 3
1
2
3
4 5 6
1 2 3
4 5 6