OR lògic
La programació és una barreja de matemàtiques, lògica i molts més dominis. Per resoldre qualsevol problema de matemàtiques, des del llibre de text fins a temps real, necessitem operadors de sumes, restes, multiplicacions i divisió. Aquests són els operadors fonamentals necessaris en matemàtiques. De la mateixa manera, per realitzar qualsevol operació sobre variables o valors, Python té 7 tipus d'operadors, i cadascun és útil. Entre aquests, ' O' és un dels operadors de Python i pertany als operadors lògics.
Els operadors lògics s'ocupen principalment necessitats de presa de decisions . Hi ha tres operadors sota els operadors lògics:
En aquest article es parla de l'operador OR amb exemples per a una comprensió clara.
Bàsic:
En llenguatges com C i Java, '||' representa l'operador OR, però a Python diem ' o ' sense utilitzar cap símbol especial.
Sintaxi: a o b
Valor de retorn: Aquest operador retorna 'True' o 'False', depenent dels operands.
matriu en cadena
- Si els dos operands/expressions a banda i banda de l'operador són falsos, retorna Fals .
- Si almenys un dels operands és cert o si tots dos són certs, retorna És cert .
Història de veritat per a l'operador 'OR':
Expressió 1 | Expressió 2 | (Expressió 1 i Expressió 2) retorna: |
---|---|---|
És cert | És cert | És cert |
És cert | Fals | És cert |
Fals | És cert | És cert |
Fals | Fals | Fals |
Necessitat d'operador OR:
Suposem que necessitem un número; si és positiu, ha de ser superior a 20; si és negatiu, ha de ser inferior a -20. Per complir aquestes condicions, si escrivim el codi mitjançant declaracions condicionals:
num = int (input ('Enter a number: ')) if (num 20): print ('True') else: print ('False')
Sortida:
Comprensió:
En el codi anterior,
- Primer, comprovem si el nombre és negatiu i inferior a -20. Si és cert, una condició és certa, aleshores no cal que comprovem la següent condició, així que imprimim 'True'.
- Si no és cert, s'executarà el bloc elif, comprovant si el nombre és positiu i superior a 20. Si aquesta condició és certa, s'imprimeix 'True'.
- Si tant if com elif són fals, el bloc else s'executarà per imprimir 'False'.
- Escrivint el codi anterior utilitzant només l'operador 'OR':
Podem comprovar les dues condicions d'una vegada en una línia.
num = int (input ('Enter a number: ')) if (num 20): print ('True') else: print ('False')
Sortida:
- L'ús de 'o' fa que el codi sigui senzill, llegible i disminueix la longitud del codi.
Prenguem un altre exemple amb una aplicació en temps real:
python redueix
Suposem que estàs organitzant un concurs de codificació per a estudiants de b-tech i m-tech; perquè qualsevol estudiant pugui participar, hauria de ser un estudiant b-tech o m-tech. Qualsevol persona que no sigui estudiant de b.tech o m.tech no pot participar al concurs. Per tant, hem de comprovar si almenys una condició és certa.
Codi:
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')
Sortida:
'o' amb només dos números:
Vegem ara què passa si donem dos nombres enters decimals a banda i banda de l'operador 'o':
Requisit previ: En general, 'o' comprova si almenys un operand és cert. Qualsevol nombre superior a 0 representa vertader i 0 representa fals.
num1 = int (input ('Enter a number: ')) num2 = int (input ('Enter another number: ')) print (num1 or num2)
Sortides de mostra:
java llarg a cadena
Comprensió:
- En el primer cas:
- Els dos nombres són més grans que el 0 - Condició veritable o veritable . Per tant, 'o' retorna True.
- La condició de 'o' és que almenys un operand ha de ser True. Per tant, després de confirmar que el primer número-4 (>0) és cert, sense comprovar el segon nombre, va tornar 'Veritat' amb el primer número.
- En el segon cas:
- El primer nombre és 0-fals; 'o' comprova el segon nombre, que és 1 (>0) - Condició falsa o vertadera . Devolucions
- En el tercer cas:
- El primer nombre és 0-fals; 'o' comprova el segon número, que torna a ser 0 - Fals o Fals . Devolucions Fals .
- L'operador 'or' cerca els operands per trobar un 'vertader'. Un cop troba un 'Veritable', retorna immediatament True sense comprovar la resta d'operands. Aquesta condició s'anomena ' El curtcircuit ' o 'Avaluació mandrosa'.
'o' amb múltiples operands:
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)
Sortides de mostra:
Comprensió:
És el mateix que tenir dos operands. 'o' cerca un 'Veritable', i si en troba un, retorna 'Veritable', i si no troba almenys un Veritable, retorna 'Fals'.
O per bits (|):
Hi ha un altre operador 'o' a Python. És un operador per bits. El representem com a '|'. Tots dos s'anomenen operadors 'o'. Ara, vegem la diferència entre els dos operadors:
El llenguatge binari és el llenguatge d'un ordinador. Tots els mecanismes interns passen pel que fa als bits. Els operadors bit a bit són el conjunt d'operadors que permeten al programador realitzar operacions bit a bit sobre nombres enters. Hi ha sis operadors per bits:
vaja en java
- I per bits
- O per bits
- Bit a bit NO
- XOR bit a bit
- Desplaçament a la dreta per bits
- Desplaçament a l'esquerra per bits
La diferència entre (lògic o, bit a bit o), (lògic i, bit a bit i), (lògic no, bit a bit no) rau en els seus noms.
- Si utilitzem qualsevol operador per bits, primer, el el nombre sencer es converteix en bits binaris , i després l'operador realitzarà l'operació poc a poc .
- Aquí, 1 representa vertader i 0 representa fals .
- Després de l'operació, el nombre binari es convertirà a decimal i es retornarà com a sortida.
El funcionament de bits o:
Els nombres enters donats es converteixen en bits (binaris) i l'operador operarà en cada bit corresponent dels dos nombres.
Bit 1 (operand 1) | Bit 2 (operand 2) | Valor de retorn |
---|---|---|
0 | 0 | 0 |
1 | 0 | 1 |
1 | 1 | 1 |
0 | 1 | 1 |
Prenguem un exemple:
Si num1 = 3 i num2 = 4:
3 -> 011
negreta en css
4 -> 100
Actuant |:
Si fem lògica o en 3 i 4, obtindrem True i es retornarà 3:
num1= int (input ('Enter a number: ')) num2 = int (input ('Enter another number: ')) print (num1 or num2) print (num1 | num2)
Sortida:
Aquests són els dos operadors 'o' disponibles per utilitzar en llenguatge Python.
OR lògic vs OR per bits:
Lògic o | Bit a bit o |
L'o lògic es representa amb 'o'. | Bit a bit o es representa amb '|.' |
Es defineix només per a valors booleans; encara que utilitzem expressions, s'avaluaran com a Vertader o Fals. | Es defineix tant per a valors enters com per a valors booleans Imprimeix (Vertader | Fals) -> Veritable |
Cerca un valor True i, si en troba un, no avalua la resta de l'expressió i retorna 'True'. Aquest fenomen s'anomena ' Avaluació mandrosa '. | Fins i tot si l'operador troba un valor True, continua avaluant la resta d'expressions. |
Aquest operador s'utilitza principalment per a la presa de decisions i la prova de la veritat. | Els operadors bit a bit estan dissenyats per a manipulacions de bits de nivell inferior. |
Cada nombre superior a 0 s'avalua com a 'vertader' i cada nombre == 0 o<0 is evaluated as 'false'< td> | 1 representa 'vertader' i 0 representa 'fals'. | 0>
A la jerarquia d'operadors, els operadors bit a bit tenen una prioritat més alta que els operadors lògics. |