logo

Python naključni randrange()

Python naključen modul omogoča generiranje naključnih števil. Generirana števila so zaporedje psevdo-naključnih števil, ki temeljijo na uporabljeni funkciji. Obstajajo različne vrste funkcij, ki se uporabljajo v naključnem modulu za ustvarjanje naključnih števil, kot npr random.random(), random.randint(), random.choice(), random.randrange(start, stop, width) , in še veliko več.

Tukaj bomo razpravljali o razpon() funkcija naključen modul. The razpon() funkcija se uporablja za ustvarjanje naključnega števila med podanim obsegom v njenem parametru. Sprejema tri parametre: začetno številko, končno številko in širino, ki se uporablja za preskok števila v obsegu.

Sintaksa random.randrange()

 random.randrange(start, stop[, width]) 

The random.randrange() funkcija vrne naključno celo število znotraj danega obsega, tj. začetek in konec. The random.randrange() funkcija sprejme tri parametre kot vhod start, stop , in premer . Od teh treh parametrov dva parametra začetek in premer so neobvezne.

  • The začetek parameter je začetno ali spodnje mejno celo število v naključnem območju. Če začetni parameter ni posredovan v parameter, ima privzeto vrednost 0 (nič).
  • A stop parameter je zadnje število ali zgornja meja celega števila v naključnem obsegu.
  • The premer parameter je razpon med vsakim številom v naključnem zaporedju. Ta parameter je neobvezen in če parameter širine ni posredovan v parametru, ima privzeto vrednost 1 (ena).

The razpon (začetek, konec, širina) funkcija ne vključuje končnega parametra med generiranjem naključnega celega števila. The stop parameter je ekskluzivno , in se ne ustvari v naključnem številu.

Poglejte to funkcijo random.randrange(3, 30, 3), ki bo ustvarila poljubno naključno celo število med 3 in 30, na primer 3, 6, 9, 12, …27. Toda ta funkcija med ustvarjanjem naključnega števila nikoli ne vključuje 30.

Generiranje naključnega v aplikaciji je bilo vedno pomembno in ima več uporab v realnem času v vsakdanjem življenju. Na primer, ustvarjanje in pošiljanje naključne številke stranki kot OTP (enkratno geslo) za izvedbo varne transakcije. Drug primer generiranja naključnega števila se uporablja med igranjem ludo igre za generiranje naključne številke kocke.

Primeri 1: random.randrange() ustvari naključno celo število znotraj danega obsega

Oglejmo si primer, kjer generiramo naključno celo število znotraj danega obsega. Ta primer prikazuje vse različne oblike funkcije random.randrange().

 import random print('Generating random number within a given range ') # Random number between 0 and 29 number1 = random.randrange(30) print('Random integer: ', number1) # Random number between 10 and 29 number2 = random.randrange(10, 30) print('Random integer: ', number2) # Random number between 25 and 200 divisible by 5 number3 = random.randrange(25, 201, 5) print('Random integer: ', number3) 

Izhod:

Python naključni randrange()

Primer 2: Generirajte obseg naključnih celih števil (večkratnik) n

Ustvarimo naključno celo število med 5 in 100, ki je obseg 5, na primer 5, 10, 25, …, 90, 95.

 import random #print 'Random number range (multiple) of 5' number = random.randrange(5, 100, 5) print('Random number range (multiple) of 5 is ', number) 

Izhod:

Python naključni randrange()

Primer 3: Generirajte naključno celo število določene dolžine

Ustvarite lahko tudi naključno celo število določene dolžine. Če želite ustvariti naključno število dolžine 3, vnesite začetek in stop parameter v razpon() deluje kot najmanjše 3-mestno število (100) in najmanjše 4-mestno število (1000), ker ustvari naključno 3-mestno število od 100 do 999, kjer so 4-mestna (1000) izključena.

Primer: ustvarite naključno 3-mestno število z uporabo random.randrange()

 import random number1 = random.randrange(100, 1000) print('First random number of length 3 is: ', number1) number2 = random.randrange(100, 1000) print('Second random number of length 3 is: ', number2) 

Izhod:

 First random number of length 3 is: 813 Second random number of length 3 is: 770 

Primer 4: Ustvarjanje naključnega negativnega celega števila:

Oglejmo si primer, ki generira naključno negativno celo število med -50 in -10.

 import random randomNagativeInteger = random.randrange(-50, -10) print('Random negative integer number between -50 to -10') print('Random negative integer number between -50 to -10 is: ',randomNagativeInteger) 

Izhod:

 Random negative integer number between -50 to -10 Random negative integer number between -50 to -10 is: -43 

Primer 5: Generirajte naključno pozitivno ali negativno celo število

 import random number1 = random.randrange(-5, 5) print(number1) number2 = random.randrange(-5, 5) print(number2) 

Izhod:

 -5 0 

Upoštevajte, da parameter začetek in stop , ki je posredovan v random.randrange() funkcija mora biti v naraščajočem vrstnem redu, kot npr random.randrange(5, 10) oz random.ranrange(-20, -10) . The začetek vedno manjši od parametra stop parameter; drugače ta funkcija ustvari napako kot 'Traceback (zadnji zadnji klic) in dvig praznega obsega ValueError za randrange()' .

Na primer:

Poglejte ta primer, v katerem kršimo pravilo s posredovanjem začetek parameter večji od stop parameter v random.randrange() funkcijo, ki ustvari sporočilo o napaki kot:

jvm v Javi
 import random randomNumber = random.randrange(10,5) 

Izhod:

Python naključni randrange()

Nekatere druge funkcije Pythonov naključen modul ki se uporabljajo za naključno ustvarjanje števil so:

    izbira() randint() vzorec () razvrsti()

random.choice()

Python naključen modul ima a izbira() funkcija, ki se uporablja za izbiro naključnega elementa s seznama ali drugega zaporedja. A random.choice() funkcija se uporablja za vrnitev naključnega elementa s seznama vrednosti.

Sintaksa ramdom.choice()

 random.choice(sequence) 

oz

 random.choices(sequence, k=l) 

Tukaj je parameter zaporedje je lahko niz, seznam, tuple in random.choice() le en naključen element.

V random.choices() funkcijo k je število elementov, ki jih je treba vrniti. Recimo, da ne omenjamo vrednosti za k parameter the random.choices() vrne en element iz zaporedja ali seznama.

Primer 1:

V tem primeru nudimo zaporedje (seznam) kot parameter in vrnemo en naključni element.

 import random listValue = [5,10,15,20,25,30] item = random.choice(listValue) print('random item from list is: ', item) 

Izhod:

 random item from list is: 10 

Primer 2:

Funkcija random.choices() se večinoma uporablja za vračanje naključnih elementov z različnimi možnostmi. Ta funkcija upošteva tudi težo (k) števila naključnih izbir. Na primer, želimo natisniti imena 3 naključnih filmov s seznama 5 filmov.

 import random movieList = ['Matrix', 'Terminator', 'Black Panther', 'Avengers', 'Titanic'] randomMovies = random.choices(movieList, k=3) print('random movies from list are: ', randomMovies) 

Izhod:

 random movies from list are: ['Avengers', 'Black Panther', 'Titanic'] 

random.randint()

Python random.randint() funkcija se uporablja za ustvarjanje naključnega celega števila znotraj podanega obsega.

Sintaksa:

 random.randint(start, stop) 

The random.randint() funkcija ima dva parametra začetek , ki je začetno območje, in stop , ki je končni obseg. Pri generiranju naključnega števila sta vključena oba parametra (start, stop).

Primer random.randint(), ki generira seznam naključnih celih števil

Ta primer bo ustvaril seznam več naključnih celih števil z uporabo funkcije randint(). Ustvarjanje seznama 5 naključnih celih števil med 1 in 100, obe vrednosti sta vključujoči.

 import random randomListValue = [] # specifing length of list equal to 5 for i in range(0, 5): # generates random numbers from 1 to 100 randomListValue.append(random.randint(1, 100)) print('Printing list of 5 generated random numbers') print(randomListValue) 

Izhod:

 Printing list of 5 generated random numbers [65, 82, 3, 39, 40] 

Vendar pa lahko obstaja možnost, da random.randint() funkcija vrne podvojeno število v izhodnem rezultatu. Če se želite izogniti podvojenemu naključnemu celemu številu v rezultatu, uporabite random.sample() funkcijo.

random.sample()

V zgornjem primeru morda obstaja možnost, da random.randint() ustvari podvojeno naključno število s seznama. Če želite ustvariti edinstvena naključna števila s seznama, uporabite random.sample() funkcijo.

The random.sample() ustvari edinstvene elemente iz nabora, seznama in drugih zaporedij. Pythonova funkcija random.sample() omogoča naključno vzorčenje več kot enega elementa znotraj obsega s seznama brez podvajanja.

Primer random.sample() za ustvarjanje naključnih elementov s seznama brez dvojnikov:

V tem primeru bomo ustvarili 10 naključnih celih števil v razponu od 0 do 100.

 import random # Generate 10 unique random numbers within a range randomList = random.sample(range(0, 100), 10) print(randomList) 

Izhod:

 [15, 17, 16, 66, 34, 85, 71, 82, 97, 48] 

Če želite ustvariti seznam naključnih števil in mora biti vsako od njih večkratnik 'n', potem uporabite parameter koraka funkcije range().

Na primer, generiranje 10 naključnih celih števil, ki so večkratnik števila 5, v obsegu od 0 do 100 z uporabo random.sample(range(0, 100, 5), 10).

 import random # Generate 10 unique random numbers within a range randomList = random.sample(range(0, 100, 5), 10) print(randomList) 

Izhod:

 [75, 40, 20, 55, 15, 10, 5, 90, 95, 70] 

Razvrsti seznam()

Python razvrsti() funkcija se uporablja za razvrščanje naključnih celih števil na seznamu v naraščajočem vrstnem redu (privzeto). Vrednost seznama lahko razvrstimo tudi v padajočem vrstnem redu, tako da določimo njen vrstni red obratno = res . Privzeta vrednost vzvratno je False .

Primer 1: sort() razvršča elemente seznama v naraščajočem vrstnem redu

V tem primeru bomo ustvarili naključni seznam 5 števil v razponu od 50 do 100 s širino 5 in jih razvrstili z razvrsti() funkcijo.

 import random randomList = random.sample(range(50, 100, 5), 5) print('Before sorting random integers list') print(randomList) # sort the list ascending order by default randomList.sort() print('After sorting random integers list') print(randomList) 

Izhod:

 Before sorting random integers list [90, 80, 60, 55, 85] After sorting random integers list [55, 60, 80, 85, 90] 

Primer 2: sort() razvršča elemente seznama v padajočem vrstnem redu

V tem primeru bomo elemente seznama razvrstili v padajočem vrstnem redu z uporabo randomList.sort(reverse=True) .

 import random randomList = random.sample(range(50, 100, 5), 5) print('Before sorting random integers list') print(randomList) # sort the list descending order randomList.sort(reverse=True) print('After sorting random integers list') print(randomList) 

Izhod:

 Before sorting random integers list [70, 50, 80, 90, 85] After sorting random integers list [90, 85, 80, 70, 50]