în acest articol, voi explica utilizarea random
modul în Python. După cum sugerează și numele, vă permite să generați numere aleatorii.
Acest modul aleatoriu conține generatoare de numere pseudo-aleatoare pentru diferite distribuții.
funcțiarandom()
este una dintre ele, generează un număr între 0 și 1.
dar există și alte funcții precumrandint(min,max)
șirandrange(max)
.
cursuri conexe: Curs complet de programare Python& exerciții
Introducere
Să începem cu generarea absolută de numere aleatoare de bază. Funcțiarandom.random()
.
funcțiarandom()
returnează următorul flotor aleatoriu din interval .
pentru a utiliza funcțiarandom()
, apelați metodarandom()
pentru a genera un număr real (float) între 0 și 1.
import random
x = random.random()
print(x)
aceasta emite orice număr între 0 și 1. Pentru majoritatea aplicațiilor, veți avea nevoie de numere întregi aleatorii în loc de numere între 0 și 1.
generați numere aleatoare
funcțiarandint()
generează numere întregi aleatorii pentru dvs. Dacă apelați funcția, returnează un număr întreg aleatoriuN
astfel încâta <= N <= b
.
metodarandint()
pentru a genera un număr întreg (integer). Puteți utiliza randint(0,50)
pentru a genera un număr aleatoriu între 0 și 50.
import random
x = random.randint(0,50)
print(x)
To generate random integers between 0 and 9, you can use the function randrange(min,max)
.
from random import randrange
print(randrange(10))
You can use randint(min,max)
instead:
import random
print(random.randint(0,9))
Change the parameters of randint() to generate a number between 1 and 10.
import random
x = random.randint(1,10)
print(x)
curs înrudit: curs complet de programare Python & exerciții
lista numerelor aleatorii
dacă doriți să generați o listă de numere aleatorii, puteți face acest lucru utilizând o buclă for.
pentru a genera o listă de 100 de numere aleatoare:
import random
mylist =
for i in range(0,100):
x = random.randint(1,10)
mylist.append(x)
print(mylist)
dar acest lucru se poate face într-un mod mult mai compact în Python, cu o singură linie.
funcția de utilizat estesample()
care amestecă lista de intrare, în exemplul de mai jos amestecă lista creatărange(1,101)
.
adicărange(1,101)
creează o listă de numere de la 1 la 100.
>>> list(range(1,101))
apoi funcțiasample()
amestecă acea listă în ordine aleatorie.
>>> import random
>>> x = random.sample(range(1,101), 100)
alegerea elementelor aleatorii dintr-o listă
puteți utiliza metoda sample()
pentru a pune lista într-un ordine aleatorie. Dar îl puteți folosi și obțineți articole aleatorii dintr-o listă.
dacă doriți 3 elemente aleatorii din listă, adăugați3
ca al doilea parametru al metodeisample(list)
.
import random
mylist =
x = random.sample(mylist,3)
print(x)
dacă doriți să alegeți un element aleatoriu, puteți utiliza metodachoice(list)
. Dar acest lucru returnează un singur element.
>>> import random
>>> x = list(range(1,101))
>>> random.choice(x)
8
>>> random.choice(x)
11
>>>
puteți utiliza metodashuffle(list)
pentru a amesteca ordinea listei și apoi utilizați primul index ca număr aleatoriu.
>>> import random
>>> x = list(range(1,101))
>>> random.shuffle(x)
modalitatea recomandată de a face acest lucru este utilizarea metodeichoice()
, dar toate acestea funcționează.
dacă sunteți un începător Python, atunci am foarte recomanda această carte.
exerciții de descărcare