Python Random modülü, Python'da rastgele tamsayılar oluşturmak için yerleşik bir modüldür. Bu sayılar rastgele oluşur ve herhangi bir kural veya talimata uymaz. Bu nedenle bu modülü rastgele sayılar oluşturmak, bir liste veya dize için rastgele bir öğeyi görüntülemek vb. için kullanabiliriz.
Rastgele() İşlevi
Random.random() işlevi, 0,0 ile 1,0 arasında değişen bir kayan sayı verir. Bu fonksiyon için herhangi bir parametreye gerek yoktur. Bu yöntem, [0.0 ve 1] içindeki ikinci rastgele kayan nokta değerini döndürür.
Kod
# Python program for generating random float number import random num=random.random() print(num)
Çıktı:
0.3232640977876686
Randint() İşlevi
Random.Randint() işlevi, sağlanan sayı aralığından rastgele bir tamsayı üretir.
Kod
# Python program for generating a random integer import random num = random.randint(1, 500) print( num )
Çıktı:
215
Randrange() İşlevi
Random.Randrange() işlevi, başlangıç, bitiş ve adım parametreleriyle tanımlanan belirli aralıktan rastgele bir öğe seçer. Varsayılan olarak başlangıç 0'a ayarlıdır. Benzer şekilde adım da varsayılan olarak 1'e ayarlıdır.
Kod
# To generate value between a specific range import random num = random.randrange(1, 10) print( num ) num = random.randrange(1, 10, 2) print( num )
Çıktı:
4 9
seçim() İşlevi
Random.choice() işlevi, boş olmayan bir seriden rastgele bir öğe seçer. Aşağıdaki programda bir string, liste ve set tanımladık. Ve yukarıdaki seçim () yöntemini kullanarak rastgele eleman seçilir.
Kod
# To select a random element import random random_s = random.choice('Random Module') #a string print( random_s ) random_l = random.choice([23, 54, 765, 23, 45, 45]) #a list print( random_l ) random_s = random.choice((12, 64, 23, 54, 34)) #a set print( random_s )
Çıktı:
M 765 54
shuffle() İşlevi
Random.shuffle() işlevi verilen listeyi rastgele karıştırır.
Kod
# To shuffle elements in the list list1 = [34, 23, 65, 86, 23, 43] random.shuffle( list1 ) print( list1 ) random.shuffle( list1 ) print( list1 )
Çıktı:
[23, 43, 86, 65, 34, 23] [65, 23, 86, 23, 34, 43]
Rastgele Modülü Kullanan Taş-Kağıt-Makas Programı
Kod
# import random module import random # Function to play game def start_game(): # Print games rules and instructions print(' This is Javatpoint's Rock-Paper-Scissors! ') print(' Please Enter your choice: ') print(' choice 1: Rock ') print(' choice 2: Paper ') print(' choice 3: Scissors ') #To take the user input choice_user = int(input(' Select any options from 1 - 3 : ')) # randint() Function which generates a random number by computer choice_machine = random.randint(1, 3) # display the machines choice print(' Option choosed by Machine is: ', end = ' ') if choice_machine == 1: print(' Rock ') elif choice_machine == 2: print('Paper') else: print('Scissors') # To declare who the winner is if choice_user == choice_machine: print(' Wow It's a tie! ') elif choice_user == 1 and choice_machine == 3: print(' Congratulations!! You won! ') elif choice_user == 2 and choice_machine == 1: print(' Congratulations!! You won! ') elif choice_user == 3 and choice_machine == 2: print(' Congratulations!! You won! ') else: print(' Sorry! The Machine Won the Game? ') # If user wants to play again play_again = input(' Want to Play again? ( yes / no ) ').lower() if play_again == ' yes ': start_game() else: print(' Thanks for playing Rock-Paper-Scissors! ') # Begin the game start_game()
Çıktı:
This is Javatpoint's Rock-Paper-Scissors! Please Enter your choice: choice 1: Rock choice 2: Paper choice 3: Scissors Select any options from 1 - 3 : 1 Option choosed by Machine is: Rock Wow It's a tie! Want to Play again? ( yes / no ) yes This is Javatpoint's Rock-Paper-Scissors! Please Enter your choice: choice 1: Rock choice 2: Paper choice 3: Scissors Select any options from 1 - 3 : 2 Option choosed by Machine is: Scissors Congratulations!! You won! Want to Play again? ( yes / no ) no Thanks for playing Rock-Paper-Scissors!
Rastgele Modülün Çeşitli İşlevleri
Rastgele modülde mevcut olan işlevlerin listesi aşağıdadır.
İşlev | Tanım |
---|---|
tohum(a=Yok, sürüm=2) | Bu işlev yeni bir rastgele sayı oluşturur. |
getstate() | Bu yöntem, jeneratörün mevcut durumunu yansıtan bir nesne sağlar. Durumu kurtarmak için setstate() argümanını sağlayın. |
ayar durumu(durum) | Durum nesnesinin sağlanması, fonksiyonun getstate() çağrıldığı andaki durumunu sıfırlar. |
getrandbits(k) | Bu işlev, k rastgele bit içeren bir Python tamsayısını sağlar. Bu, keyfi olarak büyük aralıkları yönetebilen randrange() gibi rastgele sayı üretim algoritmaları için önemlidir. |
randrange(başlat, durdur[, adım]) | Aralıktan rastgele bir tamsayı üretir. |
dönüş(a, b) | a ve b içinde rastgele bir tamsayı sağlar (her ikisi de dahil). a > b ise ValueError atılır. |
seçim(sıra) | Boş olmayan bir seri öğesini rastgele üretin. |
karıştır (sıra) | Siparişi değiştir. |
örnek(nüfus, k) | Popülasyon serisindeki k boyutlu benzersiz girişlerin listesini görüntüleyin. |
rastgele() | Bu işlev yeni bir rastgele sayı oluşturur. |
düzgün(a, b) | Bu yöntem, jeneratörün mevcut durumunu yansıtan bir nesne sağlar. Durumu kurtarmak için setstate() argümanını sağlayın. |
üçgensel(düşük, yüksek, mod) | Durum nesnesinin sağlanması, fonksiyonun getstate() çağrıldığı andaki durumunu sıfırlar. |
guass (mu, sigma) | Ortalama ve standart sapma ile rastgele bir kayan nokta sayısı oluşturulur. | betadeğişken(alfa,beta) | Alfa ve beta ile 0 ile 1 arasında rastgele bir kayan sayı oluşturulur. - Beta Dağılımı | açık değişkenlik(lambda) | Float sayısı lambda argümanı kullanılarak üretilir. - Üstel Dağılım | normal değişken(mu, sigma) | Ortalama ve standart sapma ile rastgele bir kayan nokta sayısı oluşturulur. - Normal dağılım | gamadeğişken(alfa, beta) | Alfa ve beta ile rastgele bir kayan sayı oluşturulur. - Gama Dağılımı |
Çözüm
Sonuç olarak, Python'un rastgele modülünün Tamsayılar, kayan nokta sayıları ve Listeler, tuple'lar vb. gibi diğer dizilerle başa çıkmak için bize sağladığı çeşitli yöntemleri öğrendik. Ayrıca tohumun sözde rastgele sayı modelini nasıl etkilediğine de baktık.