En RNG eller tilfeldig tallgenerator er noe som brukes av mange programmer av forskjellige grunner. Imidlertid ønsker brukeren ofte å implementere en boolsk generator. For å gjøre dette, kan brukeren bruke BOOL () -metoden for å konvertere utgangen fra den tilfeldige tallgeneratoren til boolske verdier. Denne BOOL () -metoden kan brukes ved siden av GetRandBits () -metoden, valg () -metoden og den tilfeldige () -funksjonen innenfor en betinget uttalelse.
Dette innlegget vil inneholde følgende innhold:
La oss starte med den første metoden.
Metode 1: Bruke getRandBits () -metoden for å generere boolske verdier
GetRandBits () brukes til å generere biter, i utgangspunktet heltallverdier, innenfor et område som er spesifisert i argumentet til denne metoden. Med denne metoden kan brukeren stille området til 1, noe som vil bety at den bare kan generere enten en 0 eller en 1, og deretter bruke bool () -metoden for å konvertere heltallet til det boolske ekvivalent. For å bruke denne metoden, må brukeren imidlertid importere "tilfeldig" -pakken.
For å demonstrere denne metoden for å generere tilfeldig boolsk verdi, ta følgende kodebit:
importere tilfeldig
randint = (tilfeldig.getrandbits (1))
Randbool = bool (Randint)
Print (Randbool)
Når dette kodebiten utføres, gir det følgende resultat på terminalen:
Bildet ovenfor inneholder utgangen fra flere utførelser av koden, og bekrefter at en tilfeldig boolsk genereres på hver utførelse.
Merk: GetRandBits () -metoden er den raskeste metoden for dette innlegget for å generere tilfeldige boolske verdier.
Metode 2: Bruke valg () -metoden for å generere boolske verdier
Valget () fra den "tilfeldige" pakken brukes til å velge en tilfeldig verdi fra en liste over verdier (strenger, tuples, lister og mer). Denne metoden kan brukes til å velge mellom ekte og usant ved å gi dem i en liste, eller for å velge mellom 0 og 1 og deretter konvertere den til en boolsk ved hjelp av Bool () -metoden.
For å demonstrere arbeidet med valg () -metoden for å generere tilfeldige boolske verdier, ta en titt på følgende kodebit:
importere tilfeldig
randbool = tilfeldig.valg ([sann, falsk])
Print (Randbool)
Ved utførelse vises følgende resultat på terminalen:
Utgangen verifiserer at en tilfeldig boolsk verdi ble generert. Alternativt, for den andre tilnærmingen med bruk av valg () -metoden, kan du ta en titt på det undergitte kodebiten:
importere tilfeldig
randint = tilfeldig.valg ([0,1])
Randbool = bool (Randint)
Print (Randbool)
Når dette kodebiten utføres, viser det følgende resultat på terminalen:
Utgangen er virkelig en tilfeldig boolsk generert på hver utførelse av koden.
Metode 3: Bruke den tilfeldige () metoden med IF-kondisjon for å generere boolske verdier
Den tilfeldige () metoden kan også brukes til å generere tilfeldige boolske verdier. Imidlertid bruker de fleste av brukerne det feil. Brukerne tar utgangen fra den tilfeldige () metoden og gir den deretter til Bool () -metoden for å konvertere den verdien til en boolsk. Utgangen er faktisk en boolsk verdi, men de skapte en partisk tilfeldig boolsk verdegenerator ved å bruke feil tilnærming.
Den tilfeldige () metoden produserer flytende punktverdier mellom 0 og 1, og brukere multipliserer den med 10 for å få verdien i heltall. Men verdiene varierer da fra 0 til 10. Når denne verdien blir konvertert til en bool, gir den "falsk" for bare "0". Dette betyr at det er 90% sannsynlighet for at svaret kommer til å være sant. Dermed en partisk tilfeldig boolsk generator.
For riktig, bruk den tilfeldige () metoden for å generere boolske verdier, bruk en IF-betingelse som dette:
importere tilfeldig
randbool = tilfeldig.tilfeldig ()> 0.5
Print (Randbool)
I dette kodebiten sjekker tilstanden om verdien som genereres av den tilfeldige () metoden er over 0.5 eller ikke. Basert på dette returnerer det sant eller usant, og oppnår 50% sjanse til å lande sann eller falsk. Ved utførelse er følgende resultatet:
Metode 4: Bruke Randint () -metoden for å generere boolske verdier
Randint () -metoden brukes til å generere en tilfeldig heltallverdi fra et gitt område. Hvis det medfølgende området bare er 0 og 1, og utgangen fra denne metoden føres inn i BOOL () -metoden, vil den fungere som en tilfeldig boolsk generator:
importere tilfeldig
randint = tilfeldig.Randint (0,1)
Randbool = bool (Randint)
Print (Randbool)
Når denne koden utføres, produserer den følgende utgang på terminalen:
Utgangen er en tilfeldig generert boolsk verdi for hver utførelse av denne koden.
Konklusjon
Å generere tilfeldige boolske verdier kan være nyttig i ganske mange oppgaver, spesielt når du bygger et RNG -system. For å gjøre dette kan brukeren bruke forskjellige metoder () i kombinasjon, for eksempel GetRandBits (), Choice (), Random () og Randint () -metoden med BOOL () -metoden. Dette innlegget har vist bruken av disse metodene.