Логическо ИЛИ
Програмирането е смесица от математика, логика и много други области. За да решим всеки проблем по математика, от учебник до реално време, се нуждаем от оператори за събиране, изваждане, умножение и деление. Това са основните оператори, необходими в математиката. По подобен начин, за извършване на всяка операция върху променливи или стойности, Python има 7 вида оператори и всеки е полезен. Сред тези, ' ИЛИ' е един от операторите в Python и принадлежи към логическите оператори.
Логическите оператори се занимават главно с нужди за вземане на решения . Има три оператора под логически оператори:
изключете режима за програмисти
Тази статия обсъжда оператора ИЛИ с примери за ясно разбиране.
Основен:
В езици като C и Java, '||' представлява оператора ИЛИ, но в Python казваме „ или “ без да използвате специален символ.
Синтаксис: a или b
Върната стойност: Този оператор връща „Истина“ или „Невярно“ в зависимост от операндите.
- Ако и двата операнда/израза от двете страни на оператора са неверни, той се връща Невярно .
- Ако поне един от операндите е истина или ако и двата са истина, той се връща Вярно .
Истината за оператора 'ИЛИ':
Израз 1 | Израз 2 | (Израз 1 и Израз 2) връща: |
---|---|---|
Вярно | Вярно | Вярно |
Вярно | Невярно | Вярно |
Невярно | Вярно | Вярно |
Невярно | Невярно | Невярно |
Необходимост от оператор OR:
Да предположим, че имаме нужда от число; ако е положителен, трябва да е по-голям от 20; ако е отрицателна, трябва да е по-малко от -20. За да изпълним тези условия, ако напишем кода с помощта на условни изрази:
num = int (input ('Enter a number: ')) if (num 20): print ('True') else: print ('False')
Изход:
разбиране:
В горния код,
- Първо проверяваме дали числото е отрицателно и по-малко от -20. Ако е вярно, едно условие е вярно, тогава не е необходимо да проверяваме следващото условие, така че отпечатваме „Вярно“.
- Ако не е вярно, тогава блокът elif ще бъде изпълнен, като се проверява дали числото е положително и по-голямо от 20. Ако това условие е вярно, тогава се отпечатва „Вярно“.
- Ако и if, и elif са false, тогава ще се изпълни блок else, за да се отпечата „False“.
- Писане на горния код само с помощта на оператора „ИЛИ“:
Можем да проверим и двете условия наведнъж в един ред.
num = int (input ('Enter a number: ')) if (num 20): print ('True') else: print ('False')
Изход:
- Използването на 'или' прави кода прост, четим и намалява дължината на кода.
Нека вземем друг пример с приложение в реално време:
Да предположим, че организирате състезание по кодиране за студенти по b-tech и m-tech; за да може всеки студент да участва, той трябва да е студент по b-tech или m-tech. Всяко лице, което не е студент по b.tech или m.tech, няма право да участва в състезанието. Така че трябва да проверим дали поне едно условие е вярно.
Код:
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')
Изход:
„или“ само с две числа:
Нека сега да видим какво ще се случи, ако дадем две цели десетични числа от двете страни на оператора „или“:
Предпоставка: Обикновено „или“ проверява дали поне един операнд е True. Всяко число, по-голямо от 0, представлява True, а 0 представлява False.
num1 = int (input ('Enter a number: ')) num2 = int (input ('Enter another number: ')) print (num1 or num2)
Примерни резултати:
разбиране:
- В първия случай:
- И двете числа са по-големи от 0 - Вярно или истинско условие . Следователно „или“ връща True.
- Условието на „или“ е, че поне един операнд трябва да е True. Следователно, след като потвърди, че първото число - 4 (>0) е вярно, без да проверява второто число, се върна „Вярно“ с първото число.
- Във втория случай:
- Първото число е 0-False; 'или' проверява второто число, което е 1 (>0) - Условие False или True . Се завръща
- В третия случай:
- Първото число е 0-False; 'или' проверява второто число, което отново е 0 - Фалшиво или Фалшиво . Се завръща Невярно .
- Операторът „или“ търси в операндите, за да намери „Истина“. След като намери „Истина“, незабавно връща True, без да проверява останалите операнди. Това състояние се нарича ' Късото съединение ' или „Мързелива оценка.“
„или“ с множество операнди:
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)
Примерни резултати:
java полиморфизъм
разбиране:
Това е същото като да имаш два операнда. 'or' проверява за 'True' и ако намери такова, връща 'True', а ако не намери поне едно True, връща 'False'.
Побитово ИЛИ (|):
В Python има друг оператор „или“. Това е побитов оператор. Представяме го като '|'. И двата се наричат оператори „или“. Сега нека видим разликата между двата оператора:
Двоичният език е езикът на компютъра. Всички вътрешни механизми се случват по отношение на битовете. Побитовите оператори са набор от оператори, които позволяват на програмиста да извършва побитови операции с цели числа. Има шест побитови оператора:
- Побитово И
- Побитово ИЛИ
- Побитово НЕ
- Побитово XOR
- Побитово изместване надясно
- Побитово изместване наляво
Разликата между (логическо или, побитово или), (логическо и, побитово и), (логическо не, побитово не) се крие в техните имена.
- Ако използваме който и да е побитов оператор, първо, the цялото число се преобразува в двоични битове , след което операторът ще извърши операцията постепенно .
- Тук, 1 представлява True, а 0 представлява False .
- След операцията двоичното число ще бъде преобразувано в десетично и върнато като изход.
Операцията на побитово или:
Дадените цели числа се преобразуват в битове (двоични) и операторът ще оперира с всеки съответен бит от двете числа.
Бит 1 (операнд 1) | Бит 2 (операнд 2) | Върната стойност |
---|---|---|
0 | 0 | 0 |
1 | 0 | 1 |
1 | 1 | 1 |
0 | 1 | 1 |
Да вземем пример:
Ако num1 = 3 и num2 = 4:
3 -> 011
4 -> 100
Изпълнение |:
Ако изпълним логически или на 3 и 4, ще получим True и ще бъде върнато 3:
num1= int (input ('Enter a number: ')) num2 = int (input ('Enter another number: ')) print (num1 or num2) print (num1 | num2)
Изход:
Това са двата оператора „или“, налични за използване в езика Python.
Логическо ИЛИ срещу побитово ИЛИ:
Логично или | Побитово или |
Логично или е представено с 'или'. | Побитово или се представя с '|.' |
Дефинира се само за булеви стойности; дори ако използваме изрази, те ще бъдат оценени като True или False. | Дефинира се както за цели числа, така и за булеви стойности Печат (Вярно | Невярно) -> Вярно |
Той търси стойност True и ако намери такава, не оценява останалата част от израза и връща „True“. Това явление се нарича ' Мързелива оценка '. | Дори ако операторът намери стойност True, той продължава да оценява останалите изрази. |
Този оператор се използва най-вече за вземане на решения и проверка на истината. | Побитовите оператори са предназначени за битови манипулации на по-ниско ниво. |
Всяко число, по-голямо от 0, се оценява като „Истина“ и всяко число == 0 или<0 is evaluated as 'false'< td> | 1 представлява „Истина“, а 0 представлява „Невярно“. | 0>
В йерархията на операторите побитовите оператори имат по-висок приоритет от логическите оператори. |