Logični ALI
Programiranje je mešanica matematike, logike in mnogih drugih področij. Za rešitev katerega koli problema v matematiki, od učbenika do realnega časa, potrebujemo operatorje seštevanja, odštevanja, množenja in deljenja. To so osnovni operatorji, potrebni v matematiki. Na podoben način ima Python za izvajanje katere koli operacije nad spremenljivkami ali vrednostmi 7 vrst operatorjev in vsak je uporaben. Med temi, ' ALI' je eden od operatorjev v Pythonu in spada med logične operatorje.
Logični operatorji obravnavajo predvsem potrebe po odločanju . Pod logičnimi operatorji so trije:
Ta članek obravnava operator OR s primeri za jasno razumevanje.
Osnovno:
lahko ima abstraktni razred konstruktor
V jezikih, kot sta C in Java, '||' predstavlja operator OR, vendar v Pythonu rečemo ' oz ' brez uporabe posebnih simbolov.
Sintaksa: a ali b
Vrnjena vrednost: Ta operator vrne »True« ali »False«, odvisno od operandov.
- Če sta oba operanda/izraza na obeh straneh operatorja napačna, se vrne False .
- Če je vsaj eden od operandov resničen ali če sta oba resnična, se vrne Prav .
Resnica za operator 'ALI':
Izraz 1 | Izraz 2 | (Izraz 1 in izraz 2) vrne: |
---|---|---|
Prav | Prav | Prav |
Prav | False | Prav |
False | Prav | Prav |
False | False | False |
Potreba po operatorju ALI:
Recimo, da potrebujemo številko; če je pozitiven, mora biti večji od 20; če je negativen, mora biti manjši od -20. Da bi izpolnili te pogoje, če kodo napišemo s pogojnimi stavki:
num = int (input ('Enter a number: ')) if (num 20): print ('True') else: print ('False')
Izhod:
Razumevanje:
V zgornji kodi je
oblikovalski vzorec gradbenika
- Najprej preverimo, ali je število negativno in manjše od -20. Če je res, je en pogoj resničen, potem nam naslednjega pogoja ni treba preverjati, zato natisnemo 'True'.
- Če ni res, se bo izvedel blok elif in preveril, ali je število pozitivno in večje od 20. Če je ta pogoj resničen, potem natisne 'True'.
- Če sta tako if kot elif napačna, se bo izvedel blok else za natis »False«.
- Pisanje zgornje kode z uporabo samo operatorja 'ALI':
Oba pogoja lahko preverimo naenkrat v eni vrstici.
num = int (input ('Enter a number: ')) if (num 20): print ('True') else: print ('False')
Izhod:
- Uporaba 'ali' naredi kodo preprosto, berljivo in zmanjša dolžino kode.
Vzemimo še en primer z aplikacijo v realnem času:
Recimo, da organizirate tekmovanje v kodiranju za študente b-tech in m-tech; da bi študent lahko sodeloval, mora biti študent b-tech ali m-tech. Osebe, ki niso študenti b.tech ali m.tech, ne smejo sodelovati na tekmovanju. Torej moramo preveriti, ali je vsaj en pogoj resničen.
Koda:
name = input ('Please enter the participant's name: ') course = input ('Please enter the course the participant's studying Please enter the name of the course in capital letters without spaces or other characters in between like BTECH and MTECH: ') if (course == 'BTECH' or course == 'MTECH'): print ('Congratulations!, You are eligible for the competition') else: print ('Only students in B-Tech and M-Tech are allowed to the competition. Sorry! We can't enroll you in')
Izhod:
vadnica za javafx
'ali' samo z dvema številkama:
Poglejmo zdaj, kaj se zgodi, če damo dve decimalni celi števili na obeh straneh operatorja 'ali':
Predpogoj: Na splošno 'ali' preveri, ali je vsaj en operand True. Vsako število, večje od 0, predstavlja True, 0 pa False.
num1 = int (input ('Enter a number: ')) num2 = int (input ('Enter another number: ')) print (num1 or num2)
Vzorčni rezultati:
Razumevanje:
- V prvem primeru:
- Obe številki sta večji od 0 - Pogoj True ali True . Zato 'ali' vrne True.
- Pogoj za 'ali' je, da mora biti vsaj en operand True. Zato se je po potrditvi, da je prva številka - 4 (>0) resnična, brez preverjanja druge številke vrnil 'True' s prvo številko.
- V drugem primeru:
- Prva številka je 0-False; 'ali' preveri drugo številko, ki je 1 (>0) - Pogoj False ali True . Vračila
- V tretjem primeru:
- Prva številka je 0-False; 'ali' preveri drugo številko, ki je spet 0 - False ali False . Vračila False .
- Operator 'ali' išče operande, da bi našel 'True'. Ko najde »True«, takoj vrne True, ne da bi preveril preostale operande. Ta pogoj se imenuje ' Kratek stik ' ali 'Lena ocena.'
'ali' z več operandi:
num1 = int (input ('Enter the first value: ')) num2 = int (input ('Enter the second value: ')) num3 = int (input ('Enter the third value: ')) print (num1 or num2 or num3)
Vzorčni rezultati:
Razumevanje:
To je enako, kot če bi imeli dva operanda. 'ali' preveri 'True' in če ga najde, vrne 'True', če pa ne najde vsaj enega True, vrne 'False'.
Bitno ALI (|):
V Pythonu obstaja še en operator 'ali'. Je bitni operater. Predstavimo ga kot '|'. Oba se imenujeta operatorja 'ali'. Zdaj pa poglejmo razliko med obema operaterjema:
Binarni jezik je jezik računalnika. Vsi notranji mehanizmi se dogajajo glede bitov. Bitni operatorji so nabor operatorjev, ki programerju omogočajo izvajanje bitnih operacij na celih številih. Obstaja šest bitnih operaterjev:
drevesni zemljevid
- Bitno IN
- Bitni ALI
- Bitno NE
- Bitni XOR
- Bitni premik v desno
- Bitni premik v levo
Razlika med (logični ali, bitni ali), (logični in, bitni in), (logični ne, bitni ne) je v njihovih imenih.
- Če uporabimo kateri koli bitni operator, najprej, celo število se pretvori v binarne bite , nato pa bo operater izvedel operacijo malo po malo .
- tukaj, 1 predstavlja True, 0 pa False .
- Po operaciji bo binarno število pretvorjeno v decimalno in vrnjeno kot izhod.
Delovanje bitnega ali:
Dana cela števila se pretvorijo v bite (binarno) in Operator bo deloval na vsakem ustreznem bitu obeh števil.
Bit 1 (operand 1) | Bit 2 (operand 2) | Povratna vrednost |
---|---|---|
0 | 0 | 0 |
1 | 0 | 1 |
1 | 1 | 1 |
0 | 1 | 1 |
Vzemimo primer:
Če je num1 = 3 in num2 = 4:
3 -> 011
aritmetično logična enota
4 -> 100
Izvajanje |:
Če izvedemo logično ali na 3 in 4, bomo dobili True in 3 bo vrnjen:
num1= int (input ('Enter a number: ')) num2 = int (input ('Enter another number: ')) print (num1 or num2) print (num1 | num2)
Izhod:
To sta dva operatorja 'ali', ki sta na voljo za uporabo v jeziku Python.
Logični ALI proti bitnemu ALI:
Logično oz | Bitno oz |
Logično ali je predstavljeno z 'ali'. | Bitno ali je predstavljeno z '|.' |
Definiran je samo za logične vrednosti; tudi če uporabimo izraze, bodo ovrednoteni kot True ali False. | Definiran je tako za celoštevilske vrednosti kot tudi za logične vrednosti Natisni (True | False) -> True |
Išče vrednost True in če jo najde, ne ovrednoti preostalega izraza in vrne »True«. Ta pojav se imenuje ' Leno vrednotenje '. | Tudi če operater najde vrednost True, nadaljuje z vrednotenjem preostalih izrazov. |
Ta operator se večinoma uporablja za odločanje in testiranje resnice. | Bitni operaterji so zasnovani za bitne manipulacije na nižji ravni. |
Vsako število, večje od 0, ovrednoteno kot 'True' in vsako število == 0 oz<0 is evaluated as 'false'< td> | 1 predstavlja »True«, 0 pa »False«. | 0>
V hierarhiji operaterjev imajo bitni operaterji višjo prednost kot logični operatorji. |