Directorio de artículos
prefacio
Las funciones bajo el módulo aleatorio se utilizan generalmente para generar números aleatorios.Los números aleatorios generados no son números aleatorios reales, sino una simulación de números aleatorios. El módulo aleatorio contiene varias funciones de generación de números pseudoaleatorios, así como varias funciones que generan números aleatorios a partir de distribuciones de probabilidad. Nuestro objetivo hoy es descubrir cómo se pueden generar números aleatorios.
–
1. Semilla de número aleatorio
¿Por qué proponer una semilla de número aleatorio? Como mencionamos anteriormente, todos los números aleatorios son simulados.
Si desea simular de manera más realista, debe cambiar el valor en la función semilla. Generalmente, la marca de tiempo se usa como la semilla de la función aleatoria.
Por ejemplo, en el siguiente caso, cuando la semilla del número aleatorio es fija, el número aleatorio generado también será fijo.
De forma predeterminada, el sistema utiliza la marca de tiempo como semilla para generar números aleatorios.
Marca de tiempo única Marca de tiempo
aleatoria
Primer resultado
Segundo resultado
2. Genera números aleatorios
以下一生成10个1-100的随机数为例
1.aleatorio()
El número aleatorio que genera [0-1) es de tipo float. La mayoría de las siguientes funciones se basan en esta función para la generación de números aleatorios.
Si desea generar números aleatorios en el área de respuesta, puede usar esta función para multiplicar un número entero correspondiente
from random import *
for i in range(10):
print(int(random()*100+1),end=" ")
print()
2. ranint (a, b)
Genera aleatoriamente un entero de ab
from random import *
for i in range(10):
print(randint(1,100),end=" ")
3.randrange (inicio, parada [, paso])
Hay tres elementos: inicio, final y tamaño de paso Al generar números aleatorios, se incluye el límite inferior pero no se incluye el límite superior.
from random import *
for i in range(10):
print(int(randrange(1,101)),end=" ")
4. brocas engranadas (k)
Devuelve un entero aleatorio cuya longitud en bits es k bits.
from random import *
for i in range(10):
print(int(getrandbits(4)),end=" ")
3. Generar secuencias aleatorias
1. elección (siguiente)
Dibujar al azar uno de la secuencia dada
el código se muestra a continuación:
from random import *
test=[12,3,1,2,33,21]
for i in range(10):
print(choice(test))
2. muestrax(secuencia, k)
Seleccione aleatoriamente k elementos de la secuencia, y estos k elementos no se repetirán. (necesita satisfacer len(secuencia)>=k)
el código se muestra a continuación:
from random import *
test=[1,23,3,22,13]
print(sample(test,3))
3.shuffle(x[,aleatorio])
El propósito de esta función es ordenar aleatoriamente y ordenar sobre la base de la secuencia original.
el código se muestra a continuación:
from random import *
test=[1,23,3,22,13]
shuffle(test)
print(test)