Durant la creació de programari, els nostres programes solen necessitar la producció de diversos elements. Això és més freqüent en aplicacions com ara jocs, generació d’OTP, apostes, etc. fa que la tasca de generar aquests valors sigui senzilla amb la seva funció integrada . En aquest article sobre Generadors de números aleatoris a Python, aprendreu a generar números mitjançant les diverses funcions integrades.
Abans de seguir endavant, fem una ullada als temes tractats en aquest tutorial:
- Què és el generador de números aleatoris a Python?
- Generació de nombres enters
- Generació de números de coma flotant
- Retorn de valors d'una seqüència
- Altres funcions
Comencem, doncs. :)
Què és el generador de números aleatoris a Python?
Generadors són funcions que produeixen elements sempre que es diuen. El generador de números aleatoris de Python són funcions integrades que us ajuden a generar números quan i quan sigui necessari. Aquestes funcions estan incrustades dins del mòdul aleatori de Python .
Feu un cop d'ull a la taula següent que consta d'algunes funcions importants del generador de nombres aleatoris juntament amb la seva descripció present al mòdul aleatori:
Funció | Descripció |
llavor() | Els valors produïts seran deterministes, és a dir, quan el nombre de llavor sigui el mateix, es generarà la mateixa seqüència de valors |
randrange () | Pot retornar valors aleatoris entre el límit i l'interval especificats |
cites () | Retorna un enter aleatori entre el límit indicat |
elecció () | Retorna un número aleatori d'una seqüència |
barrejar () | Mescla una seqüència determinada |
sample () | Retorna els elements seleccionats a l'atzar d'una seqüència |
uniforme () | Retorna valors de coma flotant entre l'interval donat |
Ara aprofundim en cadascun d’aquests.
Generació de nombres enters:
Es poden generar enters aleatoris mitjançant funcions com randrange () i randint ().
Primer fem una ullada a randint ().
cites ():
Aquesta funció genera nombres enters entre un límit determinat. Es necessiten dos paràmetres on el primer paràmetre especifica el límit inferior i el segon especifica el límit superior. cites (a, b) comença a generar valors de a a b tals que:
a<= x <= b (includes a and b)
EXEMPLE:
importar random random.randint (2,9)
SORTIDA: 5
El codi anterior pot generar números del 2 al 9 inclosos els límits. En cas que vulgueu generar diversos valors entre aquest interval, podeu fer servir el fitxer per com segueix:
EXEMPLE:
importació aleatòria de x en l'interval (2): print (random.randint (2,9))
SORTIDA:
2
6
En cas que vulgueu generar nombres a intervals, podeu utilitzar la funció randrange ().
randrange ():
La funció randrange (), com s’ha esmentat anteriorment, permet a l’usuari generar valors passant per sobre del recompte d’intervals.
EXEMPLE:
ordenació d'algorisme c ++
importació aleatòria de x en l'interval (5): print (random.randrange (2,60,2))
SORTIDA:
34
28
14
8
26
Com podeu veure, tots els nombres generats aquí són nombres parells entre 2 i 6.
També podeu generar valors de coma flotant mitjançant les funcions integrades del mòdul aleatori.
Generació de valors de coma flotant:
Per generar nombres de coma flotant, podeu fer ús de la funció random () i uniforme.
random ():
Aquesta funció produeix valors de coma flotant entre 0,0 i 1,0 i, per tant, no pren paràmetres. Tingueu en compte que s’exclou el límit superior. Per tant, el valor màxim serà de 9.999.
EXEMPLE:
importació aleatòria de x en l'interval (5): print (random.random ())
SORTIDA:
,18156025373128404
,19729969175918416
,6998756928129068
,16706232338156568
,059292088577491575
uniforme ():
A diferència de la funció random (), aquesta funció pren dos paràmetres que determinen els límits inferior i superior respectivament.
EXEMPLE:
per a x en el rang (5): imprimir (random.uniform (6))
SORTIDA:
2.3135197730563335
5.752723932545697
4.561236813447408
3.8459675873377863
4.8252929712263235
Python també us permet generar valors aleatoris a partir d’una seqüència determinada.
Generació de valors a partir d'una seqüència determinada:
Això es pot fer mitjançant les funcions choice () i sample ().
choice ():
Aquesta funció bàsicament pren una seqüència com a paràmetre i en retorna valors aleatoris.
EXEMPLE:
per a x en l'interval (3): imprimir (random.choice ([1,2,3,4,5,6,7,8,9]))
SORTIDA:
3
1
4
Com podeu veure, a la sortida anterior es retornen tres valors mitjançant el bucle for i tots els valors es prenen aleatòriament de la llista donada.
sample ():
La funció sample () recull una seqüència aleatòria de la seqüència donada i la torna com a sortida. Es necessiten dos paràmetres en què el primer paràmetre és una seqüència i el segon és un valor enter que especifica quants valors s'han de retornar a la sortida.
EXEMPLE:
imprimir (random.sample ([1,2,3,4,5,6,7,8,9], 4))
SORTIDA: [1, 4, 5, 9]
Com podeu veure, la llista de sortida produïda a l'exemple anterior consta de quatre valors seleccionats a l'atzar de la seqüència donada.
Altres funcions:
llavor():
La funció seed () pren un número com a paràmetre anomenat seed i produeix els mateixos números aleatoris cada vegada que crideu aquesta funció amb aquest número.
EXEMPLE:
random.seed (2) print (random.random (), random.random (), random.random (), end = 'nn') random.seed (3) print (random.random (), random.random ( ), random.random (), end = 'nn') random.seed (2) print (random.random (), random.random (), random.random ())
SORTIDA:
0.9560342718892494 0.9478274870593494 0.05655136772680869 0.23796462709189137 0.5442292252959519 0.36995516654807925 0.9560342718892494 0.9478274870593494 0.05655136772680869
A l'exemple anterior, la sortida de la llavor (2) és la mateixa cada vegada que es diu. Aquesta funció és molt útil en experiments on cal passar els mateixos números aleatoris a diversos casos de prova.
barrejar ():
Aquesta funció s'utilitza per barrejar una seqüència donada aleatòriament.
EXEMPLE:
mylist = [1,2,3,4,5,6,7,8,9] random.shuffle (mylist) imprimir (mylist)
SORTIDA: [6, 8, 2, 4, 3, 7, 1, 5, 9]
Això ens porta al final d'aquest article sobre 'Generador de números aleatoris a Python'. Espero que hagueu entès tots els conceptes.
Assegureu-vos de practicar el màxim possible i de recuperar la vostra experiència.Tens alguna pregunta? Si us plau, mencioneu-ho a la secció de comentaris d’aquest bloc “Generador de números aleatoris a Python” i us respondrem el més aviat possible.
Per obtenir coneixements en profunditat sobre Python juntament amb les seves diverses aplicacions, podeu inscriure-us a la publicació amb assistència les 24 hores del dia, els 7 dies de la setmana i accés permanent