logo

Rango aleatorio de Python()

La pitón aleatorio El módulo permite generar números aleatorios. Los números generados son una secuencia de números pseudoaleatorios, que se basan en la función utilizada. Hay diferentes tipos de funciones utilizadas en un módulo aleatorio para generar números aleatorios, como random.random(), random.randint(), random.choice(), random.randrange(inicio, parada, ancho) , y muchos más.

Aquí, discutiremos el rango rand() función de la aleatorio módulo. El rango rand() La función se utiliza para generar un número aleatorio entre el rango especificado en su parámetro. Acepta tres parámetros: número inicial, número de parada y ancho, que se utiliza para omitir un número en el rango.

Sintaxis de random.randrange()

 random.randrange(start, stop[, width]) 

El aleatorio.randrange() La función devuelve un número entero aleatorio dentro del rango dado, es decir, inicio y parada. El aleatorio.randrange() La función toma tres parámetros como entrada. empezar, parar , y ancho . De estos tres parámetros, los dos parámetros comenzar y ancho son opcionales.

  • El comenzar El parámetro es un número entero inicial o de límite inferior en un rango aleatorio. Si el parámetro de inicio no se pasa en el parámetro, toma el valor predeterminado 0 (cero).
  • A detener El parámetro es el último número o número entero de límite superior en un rango aleatorio.
  • El ancho El parámetro es un rango entre cada número en la secuencia aleatoria. Este parámetro es opcional y, si el parámetro de ancho no se pasa en el parámetro, toma el valor predeterminado 1 (uno).

El randrange(inicio, parada, ancho) La función no incluye el parámetro final al generar el número entero aleatorio. El detener el parámetro es exclusivo y no se genera en un número aleatorio.

Mire esta función random.randrange(3, 30, 3) que generará cualquier valor entero aleatorio entre 3 y 30, como 3, 6, 9, 12,… 27. Pero esta función nunca incluye 30 mientras genera un número aleatorio.

Generar un aleatorio en una aplicación siempre ha sido importante y tiene varios usos en tiempo real en el día a día. Por ejemplo, generar y enviar un número aleatorio a un cliente como OTP (contraseña de un solo uso) para realizar una transacción segura. Otro ejemplo de generación de un número aleatorio se utiliza mientras se juega al ludo para generar un número de dado aleatorio.

Ejemplos 1: random.randrange() genera un número entero aleatorio dentro del rango dado

Veamos un ejemplo en el que generamos un número entero aleatorio dentro de un rango determinado. Este ejemplo muestra todas las diferentes formas de la función random.randrange().

 import random print('Generating random number within a given range ') # Random number between 0 and 29 number1 = random.randrange(30) print('Random integer: ', number1) # Random number between 10 and 29 number2 = random.randrange(10, 30) print('Random integer: ', number2) # Random number between 25 and 200 divisible by 5 number3 = random.randrange(25, 201, 5) print('Random integer: ', number3) 

Producción:

Rango aleatorio de Python()

Ejemplo 2: generar un rango de números enteros aleatorios (múltiplo) de n

Generemos el número entero aleatorio entre 5 y 100, que es un rango de 5 como 5, 10, 25,…, 90, 95.

 import random #print 'Random number range (multiple) of 5' number = random.randrange(5, 100, 5) print('Random number range (multiple) of 5 is ', number) 

Producción:

Rango aleatorio de Python()

Ejemplo 3: generar el número entero aleatorio de una longitud específica

También puede generar un número entero aleatorio de una longitud específica. Si desea generar un número aleatorio de longitud 3, ingrese el comenzar y detener parámetro en rango rand() funciona como el número mínimo de 3 dígitos de longitud (100) y el mínimo número de 4 dígitos de longitud (1000) porque genera un número aleatorio de 3 dígitos de 100 a 999 donde se excluyen 4 dígitos (1000).

Ejemplo: generar un número aleatorio de 3 dígitos usando random.randrange()

 import random number1 = random.randrange(100, 1000) print('First random number of length 3 is: ', number1) number2 = random.randrange(100, 1000) print('Second random number of length 3 is: ', number2) 

Producción:

 First random number of length 3 is: 813 Second random number of length 3 is: 770 

Ejemplo 4: generar un número entero negativo aleatorio:

Veamos un ejemplo que genera un número entero negativo aleatorio entre -50 y -10.

 import random randomNagativeInteger = random.randrange(-50, -10) print('Random negative integer number between -50 to -10') print('Random negative integer number between -50 to -10 is: ',randomNagativeInteger) 

Producción:

 Random negative integer number between -50 to -10 Random negative integer number between -50 to -10 is: -43 

Ejemplo 5: generar un número entero aleatorio positivo o negativo

 import random number1 = random.randrange(-5, 5) print(number1) number2 = random.randrange(-5, 5) print(number2) 

Producción:

 -5 0 

Tenga en cuenta que el parámetro comenzar y detener , que se pasa en aleatorio.randrange() La función debe estar en orden creciente, como por ejemplo. aleatorio.randrange(5, 10) o aleatorio.randrange(-20, -10) . El comenzar El parámetro siempre será menor que el detener parámetro; de lo contrario, esta función genera un error como 'Rastrear (última llamada más reciente) y aumentar el rango vacío de ValueError para randrange()' .

Por ejemplo:

Mire este ejemplo en el que estamos violando la regla al pasar el comenzar parámetro mayor que el detener parámetro en aleatorio.randrange() función, que genera un mensaje de error como:

25 c a k
 import random randomNumber = random.randrange(10,5) 

Producción:

Rango aleatorio de Python()

Algunas de las otras funciones de pitón aleatorio módulo que se utilizan para generar números aleatoriamente son:

    elección() randint() muestra() clasificar()

elección.aleatoria()

Pitón aleatorio El módulo tiene un elección() Función utilizada para elegir un elemento aleatorio de una lista u otra secuencia. A elección.aleatoria() La función se utiliza para devolver un elemento aleatorio de la lista de valores.

Sintaxis de ramdom.choice()

 random.choice(sequence) 

o

 random.choices(sequence, k=l) 

Aquí el parámetro secuencia puede ser cadena, lista, tupla y elección.aleatoria() sólo un único elemento aleatorio.

En el elecciones.aleatorias() función k es el número de elementos que se devolverán. Supongamos que no mencionamos el valor de k parámetro el elecciones.aleatorias() devuelve un solo elemento de la secuencia o lista.

Ejemplo 1:

En este ejemplo, proporcionamos una secuencia (lista) como parámetro y devolvemos un único elemento aleatorio.

 import random listValue = [5,10,15,20,25,30] item = random.choice(listValue) print('random item from list is: ', item) 

Producción:

 random item from list is: 10 

Ejemplo 2:

La función random.choices() se utiliza principalmente para devolver elementos aleatorios con varias posibilidades. Esta función también toma como peso (k) el número de elecciones aleatorias. Por ejemplo, queremos imprimir el nombre de 3 películas aleatorias de una lista de 5 películas.

 import random movieList = ['Matrix', 'Terminator', 'Black Panther', 'Avengers', 'Titanic'] randomMovies = random.choices(movieList, k=3) print('random movies from list are: ', randomMovies) 

Producción:

 random movies from list are: ['Avengers', 'Black Panther', 'Titanic'] 

aleatorio.randint()

Pitón aleatorio.randint() La función se utiliza para generar un número entero aleatorio dentro del rango especificado.

Sintaxis:

 random.randint(start, stop) 

El aleatorio.randint() la función toma dos parámetros comenzar , que es un rango inicial, y detener , que es un rango final. Ambos parámetros (inicio, parada) se incluyen al generar un número aleatorio.

Ejemplo de random.randint() generando una lista de números enteros aleatorios

Este ejemplo creará una lista de múltiples números enteros aleatorios usando la función randint(). Generando una lista de 5 números enteros aleatorios entre 1 y 100, ambos valores son inclusivos.

 import random randomListValue = [] # specifing length of list equal to 5 for i in range(0, 5): # generates random numbers from 1 to 100 randomListValue.append(random.randint(1, 100)) print('Printing list of 5 generated random numbers') print(randomListValue) 

Producción:

 Printing list of 5 generated random numbers [65, 82, 3, 39, 40] 

Sin embargo, puede existir la posibilidad de que el aleatorio.randint() La función devuelve un número duplicado en el resultado de salida. Para evitar el número entero aleatorio duplicado en un resultado, utilice muestra aleatoria() función.

muestra aleatoria()

En el ejemplo anterior, puede existir la posibilidad de que aleatorio.randint() genera el número aleatorio duplicado de la lista. Si desea generar números aleatorios únicos a partir de una lista, utilice muestra aleatoria() función.

El muestra aleatoria() La función genera elementos únicos a partir de un conjunto, lista y otras secuencias. La función random.sample() de Python permite el muestreo aleatorio de más de un elemento dentro de un rango de la lista sin duplicar.

Ejemplo de random.sample() para generar elementos aleatorios a partir de una lista sin duplicados:

En este ejemplo, generaremos 10 números enteros aleatorios del rango de 0 a 100.

 import random # Generate 10 unique random numbers within a range randomList = random.sample(range(0, 100), 10) print(randomList) 

Producción:

 [15, 17, 16, 66, 34, 85, 71, 82, 97, 48] 

Si desea generar una lista de números aleatorios y cada uno de ellos debe ser múltiplo de 'n', utilice el parámetro de paso de la función range().

Por ejemplo, generar 10 números enteros aleatorios que sean múltiplos de 5 en el rango de 0 a 100 usando random.sample(range(0, 100, 5), 10).

 import random # Generate 10 unique random numbers within a range randomList = random.sample(range(0, 100, 5), 10) print(randomList) 

Producción:

 [75, 40, 20, 55, 15, 10, 5, 90, 95, 70] 

Ordenar lista()

La pitón clasificar() La función se utiliza para ordenar los números enteros aleatorios de la lista en orden ascendente (de forma predeterminada). También podemos ordenar el valor de la lista en orden descendente especificando su orden. reverso = Verdadero . El valor predeterminado de contrarrestar es FALSO .

Ejemplo 1: sort() ordenar elementos de la lista en orden ascendente

En este ejemplo, generaremos una lista aleatoria de 5 números en un rango de 50 a 100 con un ancho de 5 y los ordenaremos usando clasificar() función.

 import random randomList = random.sample(range(50, 100, 5), 5) print('Before sorting random integers list') print(randomList) # sort the list ascending order by default randomList.sort() print('After sorting random integers list') print(randomList) 

Producción:

 Before sorting random integers list [90, 80, 60, 55, 85] After sorting random integers list [55, 60, 80, 85, 90] 

Ejemplo 2: sort() ordenar elementos de la lista en orden descendente

En este ejemplo, ordenaremos los elementos de la lista en orden descendente usando lista aleatoria.sort(reversa=Verdadero) .

 import random randomList = random.sample(range(50, 100, 5), 5) print('Before sorting random integers list') print(randomList) # sort the list descending order randomList.sort(reverse=True) print('After sorting random integers list') print(randomList) 

Producción:

 Before sorting random integers list [70, 50, 80, 90, 85] After sorting random integers list [90, 85, 80, 70, 50]