Étant donné une liste, notre tâche consiste à sélectionner aléatoirement des éléments de la liste en Python à l'aide de diverses fonctions. La sélection de nombres aléatoires dans une liste peut parfois être utilisée lors de la création de jeux, du choix d'une plage aléatoire, etc.
Exemple
Input: [2, 3, 4 , 5, 6 ] Output: 2 Explaination: The output we are getting is a random value from the input list>
Sélectionnez la valeur aléatoire dans une liste
Vous trouverez ci-dessous les méthodes que nous aborderons dans cet article :
- En utilisant choix aléatoire()
- En utilisant aléatoire.randrange()
- En utilisant aléatoire.randint()
- Utiliser random.random()
- En utilisant échantillon aléatoire()
- En utilisant choix aléatoires()
- En utilisant numpy.random.choice()
- Sélectionnez k valeur aléatoire dans une liste
Sélectionnez une valeur aléatoire dans une liste en utilisant random.choice()
Ce choix aléatoire() La fonction est conçue pour obtenir un échantillonnage aléatoire à partir d'une liste dans Python et c'est donc la méthode la plus courante pour réaliser cette tâche consistant à récupérer un nombre aléatoire à partir d'un liste .
Python3
import> random> # initializing list> test_list>=> [>1>,>4>,>5>,>2>,>7>]> # printing original list> print>(>'Original list is : '> +> str>(test_list))> # using random.choice() to> # get a random number> random_num>=> random.choice(test_list)> # printing random number> print>(>'Random selected number is : '> +> str>(random_num))> |
>
port d'écoute
>
Sortir:
Original list is : [1, 4, 5, 2, 7] Random selected number is : 1>
Sélectionnez une valeur aléatoire dans une liste en utilisant random.randrange()
Le aléatoire.randrange() La méthode est utilisée pour générer un nombre aléatoire dans une plage donnée, nous pouvons spécifier la plage comme étant comprise entre 0 et la longueur de la liste et obtenir l'index, puis la valeur correspondante.
Python3
qu'est-ce que le haut-parleur
import> random> # initializing list> test_list>=> [>1>,>4>,>5>,>2>,>7>]> # printing original list> print>(>'Original list is : '> +> str>(test_list))> # using random.randrange() to> # get a random number> rand_idx>=> random.randrange(>len>(test_list))> random_num>=> test_list[rand_idx]> # printing random number> print>(>'Random selected number is : '> +> str>(random_num))> |
>
>
Sortir:
Original list is : [1, 4, 5, 2, 7] Random selected number is : 7>
Sélectionnez la valeur aléatoire dans une liste en utilisant random.randint()
Le aléatoire.randint() est utilisé pour générer le nombre aléatoire, cela peut également être utilisé pour générer n'importe quel nombre dans une plage, puis en utilisant ce nombre, nous pouvons trouver la valeur à l'index correspondant, tout comme la technique mentionnée ci-dessus. Mais cela diffère par le fait qu’il nécessite 2 arguments obligatoires pour la plage.
Python3
import> random> # initializing list> test_list>=> [>1>,>4>,>5>,>2>,>7>]> # printing original list> print>(>'Original list is : '> +> str>(test_list))> # using random.randint() to> # get a random number> rand_idx>=> random.randint(>0>,>len>(test_list)>->1>)> random_num>=> test_list[rand_idx]> # printing random number> print>(>'Random selected number is : '> +> str>(random_num))> |
>
>
Sortir:
Original list is : [1, 4, 5, 2, 7] Random selected number is : 4>
Sélectionnez la valeur aléatoire dans une liste en utilisant random.random()
Le aléatoire.random() La méthode génère les nombres à virgule flottante compris entre 0 et 1. Nous pouvons également obtenir la valeur d'index d'une liste en utilisant cette fonction en multipliant le résultat puis en le transtypant en un entier afin d'obtenir l'index entier puis le correspondant valeur de liste.
Python3
1 million en chiffres
import> random> # initializing list> test_list>=> [>1>,>4>,>5>,>2>,>7>]> # printing original list> print>(>'Original list is : '> +> str>(test_list))> # using random.random() to> # get a random number> rand_idx>=> int>(random.random()>*> len>(test_list))> random_num>=> test_list[rand_idx]> # printing random number> print>(>'Random selected number is : '> +> str>(random_num))> |
>
>
Sortir:
Original list is : [1, 4, 5, 2, 7] Random selected number is : 7>
Sélectionnez la valeur aléatoire dans une liste en utilisant random.sample()
Python a une fonction intégrée appelée échantillon aléatoire(). Le module random contient la fonction random.sample(). Il a la possibilité de choisir plusieurs éléments dans une liste.
Python3
import> random> test_list>=> [>1>,>4>,>5>,>2>,>7>]> print>(>'Original list is : '> +> str>(test_list))> print>(>'Random element is :'>, random.sample(test_list,>5>))> |
>
>
Sortir:
Original list is : [1, 4, 5, 2, 7] Random element is : [7, 4, 1, 5, 2]>
Sélectionnez la valeur aléatoire dans une liste en utilisant random.choices()
Le choix aléatoires La fonction est stockée dans le module aléatoire (). La sélection de nombreux éléments dans une liste ou d'un seul élément dans une séquence particulière est pratique à l'aide de la fonction random.choices.
Python3
tuple python trié
import> random> test_list>=> [>11>,>44>,>55>,>22>,>77>]> print>(>'Original list is : '> +> str>(test_list))> print>(>'Random element is :'>, random.choices(test_list, k>=>4>))> |
>
>
Sortir:
the t is : [11, 44, 55, 22, 77] Random element is : [11, 11, 44, 77]>
Sélectionnez la valeur aléatoire dans une liste en utilisant numpy.random.choice()
Le numpy.random.choice() La méthode est utilisée pour obtenir un échantillon aléatoire d'un tableau dans numpy. Il est également possible de générer un échantillon aléatoire à partir d'une liste en convertissant la liste en numpy tableau.
Importez numpy et initialisez la liste. Convertir la liste en numpy tableau. Utilisez la méthode numpy.random.choice() pour sélectionner une valeur aléatoire dans le tableau. Imprime la valeur sélectionnée.
Note: Installez numpy en utilisant pip install numpy
Python3
nombre premier en Java
import> numpy as np> # Initializing list> test_list>=> [>2>,>3>,>4>,>5>,>6>]> # Converting list to numpy array> test_array>=> np.array(test_list)> # Using numpy.random.choice() to get a random number> random_num>=> np.random.choice(test_array)> # Printing the random number> print>(>'Random selected number is : '> +> str>(random_num))> |
>
>
Sortir:
Random selected number is : 5>
Complexité temporelle : La complexité temporelle du numpy.random.choice() La méthode est O(k), où k est la taille de l’échantillon à générer.
Complexité spatiale : La complexité spatiale du numpy.random.choice() La méthode est O(n), où n est la taille du tableau.
Sélectionnez k valeur aléatoire dans une liste
Ici, nous avons regroupé tous les éléments dans une paire de tailles k.
Python3
import> random> def> select_random_Ns(l, k):> >random.shuffle(l)> >res>=> []> >for> i>in> range>(>0>,>len>(l), k):> >res.append(l[i:i>+> k])> >return> res> > l>=> [>'G'>,>'E'>,>'E'>,>'K'>,>'S'>,>'F'>,>'O'>,>'R'>,>'G'>,>'E'>,>'E'>,>'K'>,>'S'>]> print>(select_random_Ns(l,>3>))> |
>
>
Sortir:
[['G', 'G', 'R'], ['K', 'K', 'E'], ['O', 'F', 'E'], ['S', 'E', 'S'], ['E']]>