Python definierar en uppsättning funktioner som används för att generera eller manipulera slumpmässiga tal genom slumpmässig modul.
Funktioner i slumpmässig modul lita på en pseudoslumptalsgeneratorfunktion random(), som genererar ett slumpmässigt flyttal mellan 0,0 och 1,0. Denna speciella typ av funktioner används i många spel, lotterier eller andra applikationer som kräver generering av slumptal.
Låt oss se ett exempel på att generera ett slumptal i Python med hjälp av random() funktion.
bara nick
Python3
import> random> num>=> random.random()> print>(num)> |
>
>
Produktion:
0.30078080420602904>
Olika sätt att generera ett slumptal i Python
Det finns ett antal sätt att generera ett slumptal i Python med hjälp av funktionerna i Python-slumpmodulen. Låt oss se några olika sätt.
Generera ett slumptal använder choice()
Pytonorm random.choice() är en inbyggd funktion i programmeringsspråket Python som returnerar ett slumpmässigt objekt från en lista, tuppel , eller sträng .
Python3
# import random> import> random> # prints a random value from the list> list1>=> [>1>,>2>,>3>,>4>,>5>,>6>]> print>(random.choice(list1))> # prints a random item from the string> string>=> 'striver'> print>(random.choice(string))> |
>
>
Produktion:
5 t>
Generera ett slumptal med randrange()
Den slumpmässiga modulen erbjuder en funktion som kan generera Python-slumptal från ett specificerat intervall och ger även utrymme för steg att inkluderas, kallat randrange() .
Python3
# importing 'random' for random operations> import> random> # using choice() to generate a random number from a> # given list of numbers.> print>(>'A random number from list is : '>, end>=>'')> print>(random.choice([>1>,>4>,>8>,>10>,>3>]))> # using randrange() to generate in range from 20> # to 50. The last parameter 3 is step size to skip> # three numbers when selecting.> print>(>'A random number from range is : '>, end>=>'')> print>(random.randrange(>20>,>50>,>3>))> |
>
>
Produktion:
A random number from list is : 4 A random number from range is : 41>
Generera ett slumptal med seed()
Pytonorm slumpmässigt frö() funktion används för att spara tillståndet för en slumpmässig funktion så att den kan generera några slumptal i Python vid flera körningar av koden på samma maskin eller på olika maskiner (för ett specifikt frövärde). Frövärdet är det tidigare värdenumret som genererats av generatorn. För första gången när det inte finns något tidigare värde använder den den aktuella systemtiden.
Python3
# importing 'random' for random operations> import> random> # using random() to generate a random number> # between 0 and 1> print>(>'A random number between 0 and 1 is : '>, end>=>'')> print>(random.random())> # using seed() to seed a random number> random.seed(>5>)> # printing mapped random number> print>(>'The mapped random number with 5 is : '>, end>=>'')> print>(random.random())> # using seed() to seed different random number> random.seed(>7>)> # printing mapped random number> print>(>'The mapped random number with 7 is : '>, end>=>'')> print>(random.random())> # using seed() to seed to 5 again> random.seed(>5>)> # printing mapped random number> print>(>'The mapped random number with 5 is : '>, end>=>'')> print>(random.random())> # using seed() to seed to 7 again> random.seed(>7>)> # printing mapped random number> print>(>'The mapped random number with 7 is : '>, end>=>'')> print>(random.random())> |
>
shreya ghoshals första make
>
Produktion:
A random number between 0 and 1 is : 0.510721762520941 The mapped random number with 5 is : 0.6229016948897019 The mapped random number with 7 is : 0.32383276483316237 The mapped random number with 5 is : 0.6229016948897019 The mapped random number with 7 is : 0.32383276483316237>
Generera ett slumptal med shuffle()
Funktionen shuffle() används för att blanda en sekvens (lista). Blandning innebär att ändra positionen för elementen i sekvensen. Här är blandningsoperationen på plats.
Python3
# import the random module> import> random> # declare a list> sample_list>=> [>'A'>,>'B'>,>'C'>,>'D'>,>'E'>]> print>(>'Original list : '>)> print>(sample_list)> # first shuffle> random.shuffle(sample_list)> print>(>'
After the first shuffle : '>)> print>(sample_list)> # second shuffle> random.shuffle(sample_list)> print>(>'
After the second shuffle : '>)> print>(sample_list)> |
lär dig noggrannhetspoäng
>
>
Produktion:
Original list : ['A', 'B', 'C', 'D', 'E'] After the first shuffle : ['A', 'B', 'E', 'C', 'D'] After the second shuffle : ['C', 'E', 'B', 'D', 'A']>
Generera ett slumptal med uniform()
Funktionen uniform() används för att generera ett slumptal i Python med flyttal mellan talen som nämns i dess argument. Det krävs två argument, nedre gräns (ingår i generation) och övre gräns (ingår ej i generation).
Python3
# Python code to demonstrate the working of> # shuffle() and uniform()> # importing 'random' for random operations> import> random> # Initializing list> li>=> [>1>,>4>,>5>,>10>,>2>]> # Printing list before shuffling> print>(>'The list before shuffling is : '>, end>=>'')> for> i>in> range>(>0>,>len>(li)):> >print>(li[i], end>=>' '>)> print>(>'
'>)> # using shuffle() to shuffle the list> random.shuffle(li)> # Printing list after shuffling> print>(>'The list after shuffling is : '>, end>=>'')> for> i>in> range>(>0>,>len>(li)):> >print>(li[i], end>=>' '>)> print>(>'
'>)> # using uniform() to generate random floating number in range> # prints number between 5 and 10> print>(>'The random floating point number between 5 and 10 is : '>, end>=>'')> print>(random.uniform(>5>,>10>))> |
>
>
Produktion:
The list before shuffling is : 1 4 5 10 2 The list after shuffling is : 2 1 4 5 10 The random floating point number between 5 and 10 is : 5.183697823553464>