Python generuje losową wartość logiczną

Python generuje losową wartość logiczną

RNG lub generator liczb losowych to coś, co jest używane przez wiele programów z różnych powodów. Jednak często użytkownik chce zaimplementować generator logiczny. Aby to zrobić, użytkownik może wykorzystać metodę Bool () do konwersji wyjścia generatora liczb losowych na wartości boolowskie. Tę metodę Bool () można zastosować wraz z metodą getRandbits (), metodą wyboru () i funkcji losowej () w instrukcji warunkowej.

Ten post będzie zawierał następującą zawartość:

  • Metoda 1: Za pomocą metody getRandbits () w celu generowania wartości logicznych
  • Metoda 2: Za pomocą metody wyboru () do generowania wartości logicznych
  • Metoda 3: Za pomocą metody Random () z kondycją IF w celu wygenerowania wartości logicznych
  • Metoda 4: Za pomocą metody randint () do generowania wartości logicznych

Zacznijmy od pierwszej metody.

Metoda 1: Za pomocą metody getRandbits () w celu generowania wartości logicznych

GetRandbits () służy do generowania bitów, zasadniczo wartości całkowitej, w zakresie określonym w argumencie tej metody. Za pomocą tej metody użytkownik może ustawić zakres na 1, co oznaczałoby, że może wygenerować tylko 0 lub 1, a następnie użyć metody Bool () do konwersji liczby całkowitej na jego równoważnik boolowski. Jednak, aby użyć tej metody, użytkownik musi zaimportować pakiet „losowy”.

Aby zademonstrować tę metodę generowania losowej wartości logicznej, weź następujący fragment kodu:

Import losowy
randint = (losowy.getrandbits (1))
Randbool = bool (randint)
Drukuj (Randbool)

Kiedy ten fragment kodu jest wykonywany, daje następujący wynik na terminalu:

Powyższy obraz zawiera dane wyjściowe wielu wykonań kodu, potwierdzając, że losowa logika jest generowana przy każdym wykonaniu.

Notatka: Metoda getRandbits () jest najszybszą metodą tego postu w celu wygenerowania losowych wartości logicznych.

Metoda 2: Za pomocą metody wyboru () do generowania wartości logicznych

Wybór () z pakietu „losowego” służy do wyboru losowej wartości z listy wartości (ciągów, krotek, list i innych). Tę metodę można zastosować do wyboru między True, a Fałszyw, dostarczając je na liście lub do wyboru między 0 a 1, a następnie przekształcając ją na boolean za pomocą metody bool ().

Aby zademonstrować działanie metody wyboru () w celu generowania losowych wartości logicznych, spójrz na następujący fragment kodu:

Import losowy
Randbool = losowy.wybór ([prawda, false])
Drukuj (Randbool)

Po wykonaniu następujący wynik pokazano na terminalu:

Wyjście weryfikuje, że wygenerowano losową wartość logiczną. Alternatywnie, dla drugiego podejścia z użyciem metody Choice (), spójrz na fragment kodu poniżej:

Import losowy
Randint = losowe.Wybór ([0,1])
Randbool = bool (randint)
Drukuj (Randbool)

Po wykonaniu tego fragmentu kodu wyświetla następujący wynik na terminalu:

Dane wyjściowe jest rzeczywiście losową logiką generowaną na każdym wykonaniu kodu.

Metoda 3: Za pomocą metody Random () z kondycją IF w celu wygenerowania wartości logicznych

Metodę Random () można również zastosować do generowania losowych wartości logicznych. Jednak większość użytkowników używa go źle. Użytkownicy przyjmują dane wyjściowe metody Random (), a następnie przekazują ją do metody Bool (), aby przekonwertować tę wartość na boolean. Wyjście jest rzeczywiście wartością logiczną, ale stworzyli stronniczy losowy generator wartości logicznej przy użyciu niewłaściwego podejścia.

Metoda Random () wytwarza wartości pływające między 0 a 1, a użytkownicy mnożą ją przez 10, aby uzyskać wartość w liczbach całkowitych. Ale wartości wynoszą wówczas od 0 do 10. Kiedy ta wartość zostanie przekonwertowana w bool, daje „false” tylko dla „0”. Oznacza to, że istnieje 90% prawdopodobieństwo, że odpowiedź będzie prawdziwa. Zatem stronniczy losowy generator logiczny.

Aby poprawnie, użyj metody Random (), aby generować wartości logiczne, zastosuj klimat IF w ten sposób:

Import losowy
Randbool = losowy.Random ()> 0.5
Drukuj (Randbool)

W tym fragmencie kodu warunek sprawdza, czy wartość wygenerowana metodą Random () jest powyżej 0.5 lub nie. Na tej podstawie zwraca prawdziwą lub fałsz, osiągając 50% szans na wylądowanie prawdziwej lub fałszu. Po wykonaniu następujący jest wynik:

Metoda 4: Za pomocą metody randint () do generowania wartości logicznych

Metoda Randint () służy do generowania losowej wartości całkowitej z danego zakresu. Jeśli dostarczony zakres wynosi tylko 0 i 1, a wyjście tej metody jest przekazywane do metody Bool (), będzie działał jako losowy generator logiczny:

Import losowy
Randint = losowe.Randint (0,1)
Randbool = bool (randint)
Drukuj (Randbool)

Po wykonaniu tego kodu tworzy następujące dane wyjściowe na terminalu:

Wyjście to losowo wygenerowana wartość logiczna dla każdego wykonywania tego kodu.

Wniosek

Generowanie losowych wartości logicznych może być pomocne w kilku zadaniach, szczególnie podczas budowania systemu RNG. Aby to zrobić, użytkownik może użyć różnych metod () w kombinacji, takich jak getrandbits (), choice (), losowo () i metoda randint () z metodą bool (). Ten post wykazał zastosowanie tych metod.