Soluzione 1
La funzione choice() della libreria random risolve il problema
1 2 3 4 5 6 |
import random # choice() NUMERI=[1,9,2,8] x1=random.choice(NUMERI) # 8 x2=random.choice(NUMERI) # 9 |
Soluzione 2
Osserva
- n: numero di elementi
- p: posizione casuale in [0, n-1]
1 2 3 4 5 6 7 8 9 10 |
import random # randint() NUMERI = [...] n = len(NUMERI) # Numero elementi p =random.randint(0,n-1) # Posizione casuale da 0 a n-1 x1=NUMERI[p] # Estrazione del numero p =random.randint(0,n-1) # Un'altra posizione casuale x2=NUMERI[p] # Un altro numero casuale |
Soluzione 3
Basta una sola riga di codice
1 2 3 |
... x=NUMERI[random.randint(0, len(NUMERI)-1)] ... |
Estrazione senza reinserimento
Soluzione 1
1 2 3 4 5 6 7 8 9 |
import random # choice() NUMERI=[1,9,2,8] x1=random.choice(NUMERI) # 8 NUMERI.remove(x1) # [1,9,2] x2=random.choice(NUMERI) # 9 NUMERI.remove(x2) # [1,2] |
Soluzione 2
Osserva
- in x l’elemento scelto
- elimina l’elemento dalla lista
1 2 3 4 5 6 7 |
import random # randint() NUMERI=[1,9,2,8] p=random.randint(0, len(NUMERI)-1) # Posizione casuale x=NUMERI[p] # Estrazione del NUMERI[p] # Eliminazione |
Funzione
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
import random # randint() def estrazione(lista): p=random.randint(0,len(lista)-1) x=lista[p] del lista[p] return x #-------------------------------------------------------- NUMERI=[1,9,2,8] x=estrazione(NUMERI) # x=8, NUMERI=[1, 9, 2] x=estrazione(NUMERI) # x=9, NUMERI=[1, 2] |