logo

Pythona | Wybierz losową wartość z listy

Mając daną listę, naszym zadaniem jest losowe wybieranie elementów z listy w Pythonie za pomocą różnych funkcji. Wybieranie losowych liczb z listy może być czasami wykorzystywane podczas tworzenia gier, wybierania losowego zakresu itp.

Przykład

  Input:   [2, 3, 4 , 5, 6 ]   Output:   2   Explaination:  The output we are getting is a random value from the input list>

Wybierz losową wartość z listy

Poniżej znajdują się metody, które omówimy w tym artykule:



Wybierz losową wartość z listy za pomocą funkcji random.choice()

Ten losowy.wybór() Funkcja jest przeznaczona do pobierania losowego próbkowania z listy Pyton i dlatego jest najczęstszą metodą osiągnięcia tego zadania polegającego na pobraniu liczby losowej z a lista .

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))>

>

jak korzystać ze środowiska roboczego mysql

>

Wyjście:

Original list is : [1, 4, 5, 2, 7] Random selected number is : 1>

Wybierz losową wartość z listy za pomocą funkcji random.randrange()

The losowy.losowy() metoda służy do generowania liczby losowej z danego zakresu, możemy określić zakres na 0 do długości listy i uzyskać indeks, a następnie odpowiednią wartość.

Python3




lista jako tablica

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))>

>

>

Wyjście:

Original list is : [1, 4, 5, 2, 7] Random selected number is : 7>

Wybierz losową wartość z listy za pomocą funkcji random.randint()

The losowy.randint() służy do generowania liczby losowej, można go również wykorzystać do wygenerowania dowolnej liczby z zakresu, a następnie używając tej liczby możemy znaleźć wartość w odpowiednim indeksie, podobnie jak w przypadku powyższej techniki. Różni się jednak tym, że wymaga 2 obowiązkowych argumentów dla zakresu.

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))>

>

>

Wyjście:

Original list is : [1, 4, 5, 2, 7] Random selected number is : 4>

Wybierz losową wartość z listy za pomocą funkcji random.random()

The losowe.losowe() generuje liczby zmiennoprzecinkowe z zakresu od 0 do 1. Za pomocą tej funkcji możemy również uzyskać wartość indeksu listy, mnożąc wynik, a następnie rzutując go na liczbę całkowitą, aby otrzymać indeks całkowity, a następnie odpowiadającą mu wartość wartość listy.

Python3




kiedy zaczyna się q2
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))>

>

>

Wyjście:

Original list is : [1, 4, 5, 2, 7] Random selected number is : 7>

Wybierz losową wartość z listy za pomocą funkcji random.sample()

Python ma wbudowaną funkcję o nazwie losowa próbka(). Moduł losowy zawiera funkcję random.sample(). Posiada możliwość wyboru wielu pozycji z listy.

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>))>

>

>

Wyjście:

Original list is : [1, 4, 5, 2, 7] Random element is : [7, 4, 1, 5, 2]>

Wybierz losową wartość z listy za pomocą funkcji random.choices()

The losowe.wybory funkcja jest przechowywana w module losowym (). Wybranie wielu pozycji z listy lub pojedynczego elementu z określonej sekwencji jest wygodne dzięki funkcji random.choices.

Python3


wyjaśnić niezależność danych



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>))>

>

>

Wyjście:

the t is : [11, 44, 55, 22, 77] Random element is : [11, 11, 44, 77]>

Wybierz losową wartość z listy za pomocą numpy.random.choice()

The numpy.random.choice() metoda służy do pobierania losowej próbki z tablicy w numpy. Możliwe jest również wygenerowanie losowej próbki z listy poprzez konwersję listy do formatu a tępy szyk.
Zaimportuj numpy i zainicjuj listę. Przekonwertuj listę na tępy szyk. Użyj metody numpy.random.choice(), aby wybrać losową wartość z tablicy. Wydrukuj wybraną wartość.

Notatka: Zainstaluj numpy za pomocą pip install numpy

Python3




historia wersji Androida
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))>

>

>

Wyjście:

Random selected number is : 5>

Złożoność czasowa: Złożoność czasowa numpy.random.choice() metoda to O(k), gdzie k jest wielkością generowanej próbki.
Złożoność przestrzeni: Złożoność przestrzenna numpy.random.choice() metoda to O(n), gdzie n jest rozmiarem tablicy.

Wybierz k losowej wartości z listy

Tutaj pogrupowaliśmy wszystkie elementy w parę rozmiarów 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>))>

>

>

Wyjście:

[['G', 'G', 'R'], ['K', 'K', 'E'], ['O', 'F', 'E'], ['S', 'E', 'S'], ['E']]>