В языке программирования Python есть арифметические, логические и операторы сравнения, а также присваивание. Мы с вами уже познакомились с арифметическими операторами (+ - / * ** % //).

Оператор присваивания

Оператор присваивания присваивает значение переменной. Также он может работать совместно с арифметическими операторами.


# Оператор присваивания
a = 7
print(a)

>> 7

А теперь посмотрим на работу вместе с арифметическими операторами. В этом случае одновременно происходит и присвоение и сложение, либо другое действие:

  • Сложение и присваивание (+=)
  • Вычитание и присваивание (-=)
  • Деление и присваивание (/=)
  • Умножение и присваивание (*=)
  • Деление по модулю и присваивание (%=)
  • Возведение в степень и присваивание (**=)
  • Деление с остатком и присваивание (//=)

# Сложение и присваивание (+=)
a = 7  # Присвоили 7
print(a)
a += 3  # К 7 + 3 и записали в А
print(a)


>> 7
>> 10

Оператор сравнения

Операторы сравнения могут возвращать всего два результата: True (правда) и False(ложь). И как правило используется в условиях IF


# Меньше <
print(7 < 10)  # true
print(10 < 10)  # false
print(10 < 5)  # false

# Больше >
print(7 > 10)  # false
print(10 > 10)  # false
print(10 > 5)  # true

# Меньше или равно <=
print(7 <= 10)  # true
print(10 <= 10)  # tue
print(10 <= 5)  # false

# Больше или равно >=
print(7 >= 10)  # false
print(10 >= 10)  # true
print(10 >= 5)  # true

# Равно ==
print(7 == 10)  # false
print(10 == 10)  # true

# Не равно !=
print(7 != 10)  # true
print(10 != 10)  # false

Совместно с операторами сравнения используются логические операторы, для более детальных и сложных условий. В Python есть всего три оператора: and (и), or (или) и not (не).

  • AND - оба условия должны быть TRUE
  • OR - одно из условий должно быть TRUE
  • NOT - Этот оператор инвертирует True превращается в False и наоборот.

# AND ( И )
print(7 == 7 and 10 > 5)  # True
print(7 == 8 and 10 > 5)  # False
print(7 == 7 and 10 > 15)  # False
print(7 == 8 and 10 > 15)  # False

# OR ( ИЛИ )
print(7 == 7 and 10 > 5)  # True
print(7 == 8 and 10 > 5)  # True
print(7 == 7 and 10 > 15)  # True
print(7 == 8 and 10 > 15)  # False

# NOT ( НЕТ )
a = True
print(a)  # True
a = not (a)
print(a)  # False

Операторы принадлежности

Эти операторы проверяют, является ли значение частью последовательности. Последовательность может быть списком, строкой или кортежем. Есть всего два таких оператора: in и not in.


# В списке животных нет значения fox
pets=['dog','cat', 'ferret']
print ('fox' in pets)

# В списке животных есть значение cat
pets=['dog','cat', 'ferret']
print ('cat' in pets)

# В тексте 195637'12'36475 есть значение 12
print ('12' in '1956371236475')

# not in - тоже самое, но наобороот
# В тексте 195637'12'36475 есть значение 12
# Но ответ будет false
print ('12' not in '1956371236475')


ЗАДАЧИ

  1. Оба четные.

    Проверить являются ли оба числа четными. Пользователь вводит 2 числа, программа вывод true или false в зависимости от результата.

    ПОДСКАЗКА Используй AND и == и % , четность - если число делится на 2 без остатка.
    Ответ, но попробуй сам a = 2 b = 10 print(a % 2 == 0 and b % 2 == 0)
    
     # Ввод:
     >> 2
     >> 5
     # Вывод:
     >> False
    
     # Ввод:
     >> 2
     >> 10
     # Вывод:
     >> True
    
     
  2. Одно положительное.

    Даны три целых числа: A, B, C. Проверить истинность высказывания: “Хотя бы одно из чисел A, B, C положительное”.

    ПОДСКАЗКА используй OR и >
    
    
     # Ввод:
     >> 0
     >> -1
     >> -10
     # Вывод:
     >> False
    
     # Ввод:
     >> -1
     >> 1
     >> 0
     # Вывод:
     >> True
    
     
  3. Последняя цифра.

    Пользователь вводит число, вывести его последнюю цифру.

    ПОДСКАЗКА Последняя цифра - это остаток при делении на 10.
    
    
     # Ввод:
     >> 2345678
     # Вывод:
     >> 8
    
     # Ввод:
     >> 19
     # Вывод:
     >> 9
    
     
  4. Цифры двузначного.

    Дано двузначное число.. Найдите сумму его цифр.

    ПОДСКАЗКА 25%10=5 25//10=2
    
     # Ввод:
     >> 22
     # Вывод:
     >> 4
    
     # Ввод:
     >> 99
     # Вывод:
     >> 18
    
     
  5. Цифры трехзначного.

    Дано трехзначное число. Найдите сумму его цифр.

    ПОДСКАЗКА 123%10 = 3
    ((123//10)%10) = 2
    123//100 = 1
    
     # Ввод:
     >>123
     # Вывод:
     >> 6
    
     # Ввод:
     >> 332
     # Вывод:
     >> 8
    
     
  6. Разные цифры.

    Дано трехзначное число. Проверить истинность высказывания: “Все цифры данного числа различны т.е нет повторяющихся”.

    ПОДСКАЗКА 123%10 = 3
    ((123//10)%10) = 2
    123//100 = 1
    
     # Ввод:
     >> 123
     # Вывод:
     >> True
    
     # Ввод:
     >> 332
     # Вывод:
     >> False
    
     
  7. Часы (финальный босс).

    С начала суток прошло N секунд (N - целое). Найти количество часов, минут и секунд на электронных часах.

    Решение, но сначала подумай сам
    
     time = 85001
    
     hour = (time//3600)  # целое количество часов
    
     minutes = ((time - hour * 3600)//60)  # Секунды - часы, целое количество минут
    
     sec = time % 60  # сколько осталось секунд
    
     print(hour)
     print(minutes)
     print(sec)
    
     
    
     # Ввод:
     >> 1000
     # Вывод:
     >> 0 16 40
    
     # Ввод:
     >> 10000
     # Вывод:
     >> 2 46 40
    
     # Ввод:
     >> 85001
     # Вывод:
     >> 23 36 41