Что значит восклицательный знак в питоне

Операторы Equal и Not Equal в Python

Not Equal в Python – это оператор сравнения в Python, используемый для проверки, не равны ли два значения.

Для оператора Not Equal используется символ !=. Между восклицательным знаком и знаком равенства не должно быть разделителя.

Not Equal в основном используется в логических выражениях условных операторов, таких как If, If-Else, Elif, While и т.д.

Синтаксис

Ниже приведен синтаксис оператора сравнения:

Где, операнд_1 и операнд_2 – значения любого типа данных.

Оператор возвращает логическое значение, True – если операнд_1 и операнд_2 не равны, в противном случае он возвращает false.

Пример применения !=

В этом примере мы возьмем два целых числа и проверим, не равны ли они, используя !=.

a и b не равны, поэтому a != b вернул True.

a и c равны, поэтому a != b вернул False.

Пример 2: с оператором if

Мы уже знаем, что команда not equal возвращает логическое значение. Следовательно, это можно использовать в условиях принятия решений.

В следующем примере мы будем использовать оператор не равно в условии оператора IF.

a% 2 != 0 возвращает True для a = 11, поэтому, если блок выполняется.

Пример 3: со строками

В этом примере мы будем использовать Not Equal, чтобы проверить, не равны ли две строки.

Ясно, что две строки не равны, и результат a != b true. Итак, в Python выполняет код блока if.

Пример 4: в условии while

Вы можете использовать команду not equal в условии цикла while в Python.

Пример 5: в сложном условии

Команда может использоваться для объединения простых условий и формирования сложных условий или логических выражений.

(a == 1) и (b == 5) два простых условия, и мы должны использовать оператор неравенства, чтобы объединить их и сформировать составное условие.

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

Equal в Python – это оператор сравнения, используемый для проверки равенства двух значений.

Символ, используемый для оператора равенства Python, – ==. Оператор равенства в основном используется в логических выражениях условных операторов, таких как If, If-Else, Elif, While и т.д.

Синтаксис

Ниже приведен синтаксис:

Где, операнд_1 и операнд_2 – значения любого типа данных. Оператор равенства возвращает true, если операнд_1 и операнд_2 равны, иначе возвращает false.

Пример 1

В этом примере мы возьмем два целых числа и проверим, равны ли они, используя ==.

Пример 2: с оператором IF

В следующем примере мы будем использовать оператор равенства в условии IF.

a% 2 == 0 возвращает true для a = 10.

Пример 3: со строками

В этом примере мы будем использовать оператор равенства, чтобы проверить, равны ли две строки.

Пример 4: в условии while

Вы можете использовать оператор равенства в условии while.

Заключение

В этом руководстве Python мы узнали, что такое операторы сравнения Equal и Not Equal в Python, как использовать их, чтобы определить, равны или не равны два значения, с помощью подробных примеров программ.

Что означает ошибка TypeError: ‘str’ object does not support item assignment

Представим такое: студент только что окончил школу, где изучал Паскаль. В универе на лабораторной по Python ему дали такое задание: заменить в строке все точки на восклицательные знаки.

Студент помнит, что можно обращаться к отдельным элементам строки, поэтому сразу пишет очевидный цикл:

Но после запуска компьютер выдаёт ошибку:

❌ TypeError: ‘str’ object does not support item assignment

Казалось бы, почему? Есть строка, можно обратиться к отдельным символам, цикл в порядке — что не так-то?

Что это значит: интерпретатор сообщает нам, что не может поменять символ в строке один на другой.

Когда встречается: когда в Python мы пытаемся напрямую заменить символ в строке, как это делали в Паскале или некоторых других языках, которые это умеют. В Python строки хоть и состоят из символов, которые можно прочитать по отдельности, но управлять этими символами он не даёт.

Что делать с ошибкой TypeError: ‘str’ object does not support item assignment

Решение простое: нужно не работать с символами в строке напрямую, а собирать новую строку из исходной. А всё потому, что Python разрешает прибавлять символы к строке, считая их маленькими строками. Этим и нужно воспользоваться:

Форматные строки (f-string)

Форматированные строковые литералы — это литералы-строки с префиксом f или F .

Такие строки могут содержать маркеры для замещения (выражения в фигурных скобах — ). В то время как обычные литералы представляют собой константы, значение форматированных строк вычисляются в ходе исполнения программы.

Маркеры могут включать в себя другие маркеры.

  • Пустые выражения недопустимы;
  • Лямбда-выражения должны быть окружены скобками;
  • Допускаются переносы строк (например, в литералах с тройными кавычками), однако комментарии не поддерживаются;
  • Каждое выражение вычисляется в том же контексте, в котором содержится форматная строка, слева направо.

После этого маркер в строке заменяется отформатированным результатом вычисления выражения.

Преобразование

Если затребовано преобразование, оно будет выполнено над результатом вычисления выражения непосредственно перед форматированием.

!r Использовать repr().
!s Использовать str().
!a Использовать ascii().
Упрощение для отладки

Начиная с +py3.8 можно использовать форму f’‘ , чтобы вывести название переменной и её текущее значение.

Команда if и функция input в Python

В Python существует три команды выбора, которые исполняют код в зависимости от установленных условий, значений которых может быть истинным (True) либо ложным (False).

  • Команда if выполняет действие, если условие истинно (True), и не делает ничего если ложно (False)
  • Команда if-else выполняет действие, если условие истинно (True), или выполняет другое действие, если условие ложно (False)
  • Команда if-elif-else выполняет одно из нескольких возможных действий в зависимости от истинности или ложности нескольких условий.

1. Проверка условий в Python.

Проверка равенств.

Регулярно в программах переменные сравниваются с другими переменными или значениями. Самое простое условия, это проверить равно ли значение переменной конкретному значению.

Присвоим переменной car значение 'audi'. Во второй строке проверим равно ли значение переменной car. Двойной знак равно ( == ) используется для проверки равенства. В итоге Python возвращает значение True , означающий что значения равны. В случае неравенства значений, возвращается False .

В Python проверка равенства выполняется с учетом регистра. В случае написания значений с разным регистром, значения получаются не равными.

Проверка неравенства.

Проверка неравенства происходит с помощью восклицательного знака и знака равно ( != ). Восклицательный знак представляет отрицание, как и во многих языках программирования.

1.2. Проверка нескольких условий.

Использование and для проверки нескольких условий.

Для проверки нескольких условий одновременно, используйте ключевое слово and . Чтобы выражение было истинно (True) оба условия должны быть истинны. В примере проверим возраст людей, чтобы был младше или в возрасте 30 лет.

>>> age_1 = 29
>>> age_2 = 20
>>> age_1 <= 30 and age_2 <= 30
True

Если оба условия выполнены, то возвращается True.

Использование or для проверки нескольких условий.

При использовании ключевого слова or , проверка будет истинна если выполнено хотя бы одно условие в выражение. Проверим теперь чтобы хотя бы один из людей был младше 25 лет.

>>> age_1 = 29
>>> age_2 = 20
>>> age_1 < 25 or age_2 < 25
True

2. Функция input() .

  • Функция input() запрашивает данные у пользователя и получает их. Получив данные, сохраняет их в переменной и в последующем вы можете работать с этой переменной.

>>> name = input ('Как вас зовут? ')
Как вас зовут? Ян # вводит пользователь
>>> print(name)
Ян

  • Функция input() всегда возвращает строку. Если мы захотим сложить два числа, то получим не верный ответ. Пример:

>>> a = input ('Введите число: ')
Введите число: 5
>>> b = input ('Введите число: ')
Введите число: 10
>>> a + b
'510'

Вместо того чтобы сложить 5 и 10 и в итоге получить 15, Python складывает строковое значения '5' и '10', и в итоге получает строку '510'. Это операция называется конкатенация строк. В результате создается новая строка из левого операнда, за которым следует правый.

  • Если вам требуется получить целое число, то преобразуйте строку в число с помощью функцииint () :

>>> a = int( input ('Введите число: '))
Введите число: 5
>>> b = int( input ('Введите число: '))
Введите число: 10
>>> a + b
15

  • Если вам требуется получить число с плавающей точкой, то используйте функцию float()

>>> a = float( input ('Введите число: '))
Введите число: 12.5
>>> b = float( input ('Введите число: '))
Введите число: 7.3
>>> a + b
19.8

3.1. Команда if .

Самая простая команда if состоит из одного условия и одного действия.

дествие # отступ в 4 пробела

Приведем пример программы, которая определяет платный ли вход в кинотеатр:

>>> age = 25
>>> if age >= 18 :
. print('Вход в кинотеатр для вас платный')
. print('Приобретите билет в кассе')
.
Вход в кинотеатр для вас платный
Приобретите билет в кассе

В первой строке команды if мы размещаем условия, а во второй строке кода с отступом — практически любое действие. В случае выполнения условия выполняется действие, если условие не выполнено, ничего не происходит.

3.2. Команда if-else .

В случае если необходимо выполнить другое действие если условие ложно, можно воспользоваться командой if-else . Блок if записывается так же, как и раньше, а после него записывается блок else с набором действий в случае невыполнения команды if .

>>> age = 17
>>> if age >= 18 :
. print('Вход в кинотеатр для вас платный')
. print('Приобретите билет в кассе')
. else:
. print('Для вас вход бесплатный')
.
Для вас вход бесплатный

Блок else записывается на уровне блока If , без 4 пробелов.

3.3. Команда if-elif-else .

Команда if-elif-else позволяет проверить сразу несколько условий. Предположим, стоимость билетов кинотеатр изменяется в зависимости от возврата посетителя.

>>> age = 35
>>> if age <= 7 :
. print('Для вас вход бесплатный')
. elif age < 18 :
. print('Стоимость билета 500 руб')
. elif age <= 60 :
. print('Стоимость билета 1000 руб')
. else:
. print('Для вас вход бесплатный')
.
Стоимость билета 1000 руб

Код выполняется последовательно, программа вначале проверяет соответствие возраста меньше или равно 7 лет, затем < 18 и т.д. Как только условия выполняются, Python выводит результат и действие программы прекращается. Важно ставить правильную последовательность условий. К примеру, если мы поставим условие младше или равно 60 в начало, то возраст меньше 7 и 18 не будет работать и программа сразу выдаст результат максимальной стоимости билета.

Наличие секции else в команде if-elif-else необязательно. Ее присутствие позволяет обработать результат, не удовлетворяющий никаким условиям.

4. Команда if со списками.

С помощью команды if , например при переборе списка, возможно использовать каждый элемент на свое усмотрение.

>>> cars = [ 'ford', 'opel', 'audi', 'land rover', 'bmw' ]
>>> for brand in cars:
. if brand == 'audi' :
. print(f"Гарантия на автомобиль 2 года")
. elif brand == 'bmw' :
. print(f"Гарантия на автомобиль 3 года")
. else:
. print(f"Гарантия на автомобиль 5 лет")
.
Гарантия на автомобиль Ford 5 лет
Гарантия на автомобиль Opel 5 лет
Гарантия на автомобиль Audi 2 года
Гарантия на автомобиль Land Rover 5 лет
Гарантия на автомобиль Bmw 3 года

В данном примере с помощью команды for мы перебираем весь список автомобилей. Если марка автомобиля соответствует условия if-elif , то выводится для этих марок свое сообщение по условиям гарантии. В случае не совпадения условий, выдается общее сообщение для всех остальных марок.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *