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:
- Ved hjelp av random.choice()
- Ved hjelp av random.randrange()
- Ved hjelp av random.randint()
- Bruker random.random()
- Ved hjelp av tilfeldig utvalg()
- Ved hjelp av random.choices()
- Ved hjelp av numpy.random.choice()
- Velg k tilfeldig verdi fra en liste
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']]>