Python, равный ( Left == справа
) Оператор возвращает Правда
когда его левый
Операнд равен его правильно
операнд. В противном случае возвращается Ложь
Отказ Например, 3 == 3
оценивает Правда
, но 3 == 2
оценивает Ложь
Отказ
Примеры
Давайте рассмотрим пару примеров относительно равно оператор.
3 равен 2?
>>> 3 == 2 False
Как насчет 'h'
равно 'h'
?
>>> 'h' == 'h' True
Вы можете сравнить коллекции, такие как списки, строки, кортежи?
>>> [1, 2] == [1, 2] True >>> [1, 2] == [1, 2, 3] False >>> (1, 1) == (1, 1, 1) False >>> 'hello' == 'hello' True
Да!
Список равно Оператор ITEERATE по поводу списков и проверки попарно, если i-й элемент левого операнда равен i-й элементу правого операнда.
Можете ли вы использовать равно Оператор на пользовательских объектах? Да!
Python равный на пользовательских объектах
Использовать равно Оператор на пользовательских объектах, вам нужно определить __eq __ ()
“Дунги” Магический метод Это требует двух аргументов: Я
и Другое
Отказ Затем вы можете использовать атрибуты пользовательских объектов, чтобы определить, равно ли он другой. Это должно вернуть логическое значение Правда
или Ложь
Отказ
В следующем коде вы проверяете, равен ли человеку другого человека, используя возраст
атрибут Как критерий решения:
class Person: def __init__(self, age): self.age = age def __eq__(self, other): return self.age == other.age alice = Person(18) bob = Person(19) carl = Person(18) print(alice == bob) # False print(alice == carl) # True
Потому что Алиса 18 лет, и Боб 19 лет, результат Алиса
это Ложь
Отказ Но результат Алиса
оценивает Правда
как оба имеют одинаковый возраст.
Python равный нескольким значениям
Как вы проверяете, равно ли значение равно нескольких значениям?
Чтобы проверить, равно ли конечное количество значений равна, вы можете цепить оператор сравнения ==
многократно. Например, выражение х
оценивает Правда
Если все три равны. Это сокращение выражения для (х) и (y)
Отказ
В следующем примере вы создаете три переменных, которые все получают одинаковое значение 42. При проверке их использования х
результат это Правда
Отказ
>>> x = 43 - 1 >>> y = 42 >>> z = 21 + 21 >>> x == y == z True
Python равный или б
Чтобы проверить, если значение х
равно либо А
или B
или оба, вы можете использовать выражение x в {a, b}
Отказ
- Поместив значения в Установить
{a, b}
, вы можете по сути сделать логично или Операция по тестированию равенства. - Вы проверяете членство, используя ключевое слово
в
Отказ Это проверяет свой способ (постоянная сложность времени выполнения!), Существует ли значение x в наборе, то есть оператор равенства оцениваетПравда
Отказ
Вот минимальный пример, где мы создаем значение х
и проверьте, равно ли это А
или B
Поместив как в набор, так и проверку членства:
>>> x = 42 >>> a = 21 + 21 >>> b = 43 * 2 >>> x in {a, b} True
Значение 42 существует в наборе- х
равно А
в примере. Так что результат – Правда
Отказ
Python равный или
Чтобы проверить, если значение х
равно нескольким значениям, то есть, выполняя логично или Операция по тестированию равенства вы можете поставить все значения для тестирования на наборе S
Отказ Тогда проверьте х в s Чтобы проверить, если какое-либо значение y
В комплекте S
равно переменной х
Отказ
Вот минимальный пример, где мы выполняем логическую или на х
Для всех ценностей y
Преобразовав список значений в комплект по причинам эффективности. Проверка членства, используя в
Ключевое слово более эффективно на наборы чем на Списки Отказ
>>> lst = ['alice', 42, 'finxter', 21, 333, None] >>> x = 'finx' + 'ter' >>> x in set(lst) True
Строковое значение 'finxter
«существует в наборе {'alice', 42, 'finxter', 21, 333, нет}
Так что результат – Правда
Отказ
Python равный NAN
Чтобы проверить, есть ли номер х
равно NAN, используйте math.isnan (x)
Метод, который возвращает Правда
Если номер х
это нан, а Ложь
иначе.
Следующий код показывает пример, в котором мы сначала создаем значение Float NAN, используя поплавок ('NAN')
Встроенный метод, а затем проверка этого номера, используя math.isnan (x)
Отказ Результатом является Правда
Отказ
import math x = float('nan') print(math.isnan(x)) # True
Операторы сравнения
Сравнение операторов применяются к сопоставимым объектам, и они возвращают логическое значение ( True
или false
).
Оператор | Имя | Описание | Пример |
> | Лучше чем | Возвращает true, если левый операнд больше, чем правильный операнд | 3 > 2 |
< | Меньше, чем | Возвращает true, если левый операнд меньше, чем правильный операнд | 3 < 2 |
== | Равно | Возвращает true, если левый операнд такой же, как правильный операнд | (3) |
!= | Не равно | Возвращает true, если левый операнд не такой, как правильный операнд | (3) |
>= | Больше или равно | Возвращает true, если левый операнд больше или равен правой операнду | (3) |
<= | Меньше или равно | Возвращает true, если левый операнд меньше или равен правой операнду | (3) |
Работая в качестве исследователя в распределенных системах, доктор Кристиан Майер нашел свою любовь к учению студентов компьютерных наук.
Чтобы помочь студентам достичь более высоких уровней успеха Python, он основал сайт программирования образования Finxter.com Отказ Он автор популярной книги программирования Python One-listers (Nostarch 2020), Coauthor of Кофе-брейк Python Серия самооставленных книг, энтузиаста компьютерных наук, Фрилансера и владелец одного из лучших 10 крупнейших Питон блоги по всему миру.
Его страсти пишут, чтение и кодирование. Но его величайшая страсть состоит в том, чтобы служить стремлению кодер через Finxter и помогать им повысить свои навыки. Вы можете присоединиться к его бесплатной академии электронной почты здесь.