logo

Python | Velg tilfeldig verdi fra en liste

Gitt en liste og vår oppgave er å tilfeldig velge elementer fra listen i Python ved hjelp av ulike funksjoner. Å velge tilfeldige tall fra en liste kan noen ganger brukes mens du bygger spill, velger et tilfeldig område osv.

Eksempel

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

Velg tilfeldig verdi fra en liste

Nedenfor er metodene vi vil dekke i denne artikkelen:



Velg en tilfeldig verdi fra en liste ved å bruke random.choice()

Dette random.choice() funksjonen er designet for å få et tilfeldig utvalg fra en liste i Python og derfor er den vanligste metoden for å oppnå denne oppgaven med å hente et tilfeldig tall fra a 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))>

>

java iterate kart

>

Produksjon:

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

Velg en tilfeldig verdi fra en liste ved å bruke random.randrange()

De random.randrange() metoden brukes til å generere et tilfeldig tall i et gitt område, kan vi spesifisere området til å være 0 til lengden på listen og få indeksen, og deretter den tilsvarende verdien.

Python3




reactjs kart

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

>

>

Produksjon:

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

Velg den tilfeldige verdien fra en liste ved å bruke random.randint()

De random.randint() brukes til å generere det tilfeldige tallet, også dette kan brukes til å generere et hvilket som helst tall i et område, og ved å bruke det tallet kan vi finne verdien ved den tilsvarende indeksen, akkurat som den ovennevnte teknikken. Men det skiller seg ved at det krever 2 obligatoriske argumenter for rekkevidde.

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

>

>

Produksjon:

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

Velg den tilfeldige verdien fra en liste ved å bruke random.random()

De random.random() metoden genererer flyttall i området 0 til 1. Vi kan også få indeksverdien til en liste ved å bruke denne funksjonen ved å multiplisere resultatet og deretter typecaste det til et heltall for å få heltallsindeksen og deretter den tilsvarende listeverdi.

Python3




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

>

java farger

>

Produksjon:

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

Velg den tilfeldige verdien fra en liste ved å bruke random.sample()

Python har en innebygd funksjon kalt tilfeldig utvalg(). Den tilfeldige modulen inneholder funksjonen random.sample(). Den har muligheten til å velge flere elementer fra en 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>))>

>

>

Produksjon:

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

Velg den tilfeldige verdien fra en liste ved å bruke random.choices()

De tilfeldige.valg funksjonen er lagret i den tilfeldige modulen(). Å velge flere elementer fra en liste eller et enkelt element fra en bestemt sekvens er praktisk ved hjelp av random.choices-funksjonen.

Python3




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

ankita dave

>

>

Produksjon:

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

Velg den tilfeldige verdien fra en liste ved å bruke numpy.random.choice()

De numpy.random.choice() metoden brukes for å få et tilfeldig utvalg fra en matrise i numpy. Det er også mulig å generere et tilfeldig utvalg fra en liste ved å konvertere listen til en nusset array.
Importer numpy og initialiser listen. Konverter listen til en nusset array. Bruk metoden numpy.random.choice() for å velge en tilfeldig verdi fra matrisen. Skriv ut den valgte verdien.

Merk: Installer numpy med pip install numpy

Python3




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

matriser i c-programmering
>

>

Produksjon:

Random selected number is : 5>

Tidskompleksitet: Tidskompleksiteten til numpy.random.choice() metoden er O(k), der k er størrelsen på prøven som skal genereres.
Plass kompleksitet: Romkompleksiteten til numpy.random.choice() metoden er O(n), der n er størrelsen på matrisen.

Velg k tilfeldig verdi fra en liste

Her har vi gruppert alle elementene i et par størrelser 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>))>

>

>

Produksjon:

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