Logické NEBO
Programování je směsí matematiky, logiky a mnoha dalších oblastí. K vyřešení jakéhokoli problému v matematice, od učebnice až po real-time, potřebujeme operátory sčítání, odčítání, násobení a dělení. To jsou základní operátory potřebné v matematice. Podobně pro provádění jakékoli operace s proměnnými nebo hodnotami má Python 7 typů operátorů a každý je užitečný. Mezi těmito, ' NEBO' je jedním z operátorů v Pythonu a patří k logickým operátorům.
Zabývají se především logickými operátory potřeby rozhodování . V rámci logických operátorů existují tři operátory:
Tento článek popisuje operátor OR s příklady pro jasné pochopení.
Základní:
V jazycích jako C a Java, '||' představuje operátor OR, ale v Pythonu říkáme „ nebo “ bez použití speciálního symbolu.
Syntaxe: a nebo b
Návratová hodnota: Tento operátor buď vrátí 'True' nebo 'False' v závislosti na operandech.
- Pokud jsou oba operandy/výrazy na kterékoli straně operátoru nepravdivé, vrátí se Nepravdivé .
- Pokud je alespoň jeden z operandů pravdivý nebo pokud jsou pravdivé oba, vrátí se Skutečný .
Pravdivý příběh pro operátora „OR“:
Výraz 1 | Výraz 2 | (Výraz 1 a Výraz 2) vrátí: |
---|---|---|
Skutečný | Skutečný | Skutečný |
Skutečný | Nepravdivé | Skutečný |
Nepravdivé | Skutečný | Skutečný |
Nepravdivé | Nepravdivé | Nepravdivé |
Potřeba operátora OR:
Předpokládejme, že potřebujeme číslo; pokud je kladné, musí být větší než 20; pokud je záporné, musí být menší než -20. Abychom splnili tyto podmínky, pokud napíšeme kód pomocí podmíněných příkazů:
java řetězec je prázdný
num = int (input ('Enter a number: ')) if (num 20): print ('True') else: print ('False')
Výstup:
Porozumění:
Ve výše uvedeném kódu
- Nejprve zkontrolujeme, zda je číslo záporné a menší než -20. Pokud je to pravda, jedna podmínka je pravdivá, pak nemusíme kontrolovat další podmínku, takže vypíšeme 'True'.
- Pokud to není pravda, provede se blok elif, přičemž se zkontroluje, zda je číslo kladné a větší než 20. Pokud je tato podmínka pravdivá, vypíše 'True'.
- Pokud jsou if i elif nepravdivé, pak bude proveden blok else a vypíše se 'False'.
- Zápis výše uvedeného kódu pouze pomocí operátoru 'OR':
Můžeme zkontrolovat obě podmínky najednou v jednom řádku.
num = int (input ('Enter a number: ')) if (num 20): print ('True') else: print ('False')
Výstup:
- Použití 'nebo' dělá kód jednoduchým, čitelným a zkracuje délku kódu.
Vezměme si další příklad s aplikací v reálném čase:
Předpokládejme, že pořádáte soutěž v kódování pro studenty b-tech a m-tech; aby se každý student zúčastnil, měl by být buď studentem B-tech, nebo M-tech. Do soutěže se nesmí přihlásit jakákoliv osoba, která není studentem b.tech ani m.tech. Musíme tedy zkontrolovat, zda je splněna alespoň jedna podmínka.
Kód:
json v příkladu json
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')
Výstup:
„nebo“ pouze se dvěma čísly:
Podívejme se nyní, co se stane, když dáme dvě desetinná celá čísla na obě strany operátoru „nebo“:
Předpoklad: Obecně „nebo“ kontroluje, zda je alespoň jeden operand pravdivý. Jakékoli číslo větší než 0 znamená True a 0 znamená False.
num1 = int (input ('Enter a number: ')) num2 = int (input ('Enter another number: ')) print (num1 or num2)
Ukázkové výstupy:
Porozumění:
- V prvním případě:
- Obě čísla jsou větší než 0 - True nebo True podmínka . Proto 'nebo' vrací True.
- Podmínkou 'nebo' je, že alespoň jeden operand musí mít hodnotu True. Po potvrzení, že první číslo-4 (>0) je pravdivé, bez kontroly druhého čísla se tedy vrátilo „Pravda“ s prvním číslem.
- V druhém případě:
- První číslo je 0-False; 'nebo' kontroluje druhé číslo, které je 1 (>0) - Falešný nebo pravdivý stav . Návraty
- Ve třetím případě:
- První číslo je 0-False; 'nebo' kontroluje druhé číslo, které je opět 0 - Falešný nebo Falešný . Návraty Nepravdivé .
- Operátor 'or' prohledává operandy, aby našel 'True'. Jakmile nalezne 'True', okamžitě vrátí True, aniž by kontroloval zbytek operandů. Tento stav se nazývá ' Zkrat nebo 'Líné hodnocení.'
'nebo' s více operandy:
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)
Ukázkové výstupy:
Porozumění:
Je to stejné jako mít dva operandy. 'nebo' zkontroluje 'True', a pokud nějakou najde, vrátí 'True', a pokud nenajde alespoň jednu True, vrátí 'False'.
Bitové NEBO (|):
V Pythonu existuje další operátor „or“. Je to bitový operátor. Představujeme jej jako '|'. Oba se nazývají operátory „nebo“. Nyní se podívejme na rozdíl mezi těmito dvěma operátory:
Binární jazyk je jazyk počítače. Všechny vnitřní mechanismy se týkají bitů. Bitové operátory jsou množinou operátorů, které umožňují programátorovi provádět bitové operace s celými čísly. Existuje šest bitových operátorů:
pole řetězců v jazyce C
- Bitové AND
- Bitově NEBO
- Bitově NE
- Bitový XOR
- Bitový posun doprava
- Bitový posun doleva
Rozdíl mezi (logické nebo, bitové nebo), (logické a, bitové a), (logické ne, bitové ne) spočívá v jejich názvech.
- Pokud použijeme jakýkoli bitový operátor, za prvé, the celé číslo je převedeno na binární bity a poté operátor provede operaci kousek po kousku .
- Tady, 1 představuje True a 0 představuje False .
- Po operaci bude binární číslo převedeno na desítkové a vráceno jako výstup.
Operace bitového nebo:
applet
Daná celá čísla jsou převedena na bity (binární) a operátor bude pracovat s každým odpovídajícím bitem těchto dvou čísel.
Bit 1 (operand 1) | Bit 2 (operand 2) | Návratová hodnota |
---|---|---|
0 | 0 | 0 |
1 | 0 | 1 |
1 | 1 | 1 |
0 | 1 | 1 |
Vezměme si příklad:
Pokud num1 = 3 a num2 = 4:
3 -> 011
4 -> 100
Účinkující |:
Pokud provedeme logické nebo na 3 a 4, dostaneme True a vrátí se 3:
num1= int (input ('Enter a number: ')) num2 = int (input ('Enter another number: ')) print (num1 or num2) print (num1 | num2)
Výstup:
Toto jsou dva operátory „nebo“, které lze použít v jazyce Python.
Logické OR vs Bitwise OR:
Logické resp | Bitově popř |
Logické nebo je reprezentováno 'nebo.' | Bitově nebo je reprezentováno '|.' |
Je definován pouze pro booleovské hodnoty; i když použijeme výrazy, budou vyhodnoceny jako True nebo False. | Je definován pro celočíselné hodnoty i pro booleovské hodnoty Tisk (True | False) -> True |
Hledá hodnotu True, a pokud nějakou najde, nevyhodnocuje zbytek výrazu a vrací 'True'. Tento jev se nazývá „ Líné hodnocení '. | I když operátor najde hodnotu True, pokračuje ve vyhodnocování zbývajících výrazů. |
Tento operátor se většinou používá pro rozhodování a testování pravdivosti. | Bitové operátory jsou navrženy pro bitové manipulace nižší úrovně. |
Každé číslo větší než 0 je vyhodnoceno jako 'True' a každé číslo == 0 nebo<0 is evaluated as 'false'< td> | 1 představuje „pravda“ a 0 představuje „nepravda“. | 0>
V hierarchii operátorů mají bitové operátory vyšší prioritu než logické operátory. |