Комментарии и способы присваивания в Python
Обновлено:
1. Что такое комментарий
Комментарий — это текст, который мы оставляем в коде для себя или для других программистов.
Комментарий может содержать:
- пояснение к коду;
- напоминание;
- подсказку;
- описание того, что делает определённый участок кода.
Для создания комментария используется символ #.
# Это комментарий
Python не выполняет текст, который находится после символа #.
2. Комментарий на отдельной строке
Комментарий можно написать на отдельной строке:
# Здесь находится имя пользователя
first_name = 'Anna'
Ещё примеры:
# Стоимость товара
product_price = 1500
# Длину строки посчитаем позже
text = 'Hello'
# Напоминание: изменить значение перед запуском программы
age = 25
3. Несколько строк комментариев
Если нужно написать комментарий на нескольких строках, перед каждой строкой ставится символ #.
# Это программа для тренировки
# создания переменных
# и вывода значений на экран
Ещё пример:
# Имя пользователя
# записываем латиницей
# в стиле snake_case
first_name = 'Anna'
Каждая строка комментария начинается с символа #.
4. Комментарий после строки кода
Комментарий можно написать после строки кода.
Между кодом и комментарием обычно ставят два пробела:
age = 25 # Возраст пользователя
Ещё примеры:
first_name = 'Anna' # Имя пользователя
product_price = 1500.5 # Стоимость товара
text_length = len('Hello') # Длина строки
Комментарий после кода может объяснять, что делает эта строка.
Он также может содержать напоминание:
lesson_price = 1500 # Позже изменить стоимость
5. Как закомментировать строку кода
Символ # можно поставить перед строкой кода:
# print('Hello')
Теперь строка:
print('Hello')
не будет выполнена.
Например:
print('First')
# print('Second')
print('Third')
Результат:
First
Third
Строка:
# print('Second')
не сработала, потому что она была закомментирована.
6. Как временно выключить код
Комментарии можно использовать, чтобы временно выключить определённую строку кода.
Рабочий код:
print('Hello')
Временно выключенный код:
# print('Hello')
Чтобы снова включить строку, нужно удалить символ #:
print('Hello')
7. Комментирование нескольких строк в Visual Studio Code
В Visual Studio Code можно одновременно закомментировать несколько строк.
Сначала нужно выделить нужные строки:
print('First')
print('Second')
print('Third')
print('Fourth')
print('Fifth')
Затем использовать горячую клавишу.
На macOS:
Command + /
На Windows:
Ctrl + /
После этого Visual Studio Code добавит символ # перед выделенными строками:
# print('First')
# print('Second')
# print('Third')
# print('Fourth')
# print('Fifth')
Если снова выделить эти строки и нажать ту же комбинацию, комментарии будут удалены.
Эти горячие клавиши работают в Visual Studio Code.
В программе IDLE эти сочетания клавиш не работают.
8. Каскадное присваивание
Каскадное присваивание позволяет присвоить один объект сразу нескольким переменным.
Обычное создание двух переменных:
a = 10
b = 10
То же самое можно записать с помощью каскадного присваивания:
a = b = 10
Теперь переменные a и b ссылаются на объект 10.
print(a)
print(b)
Результат:
10
10
9. Каскадное присваивание трём переменным
Один объект можно присвоить трём переменным:
a = b = c = 25
Теперь:
print(a)
print(b)
print(c)
Результат:
25
25
25
10. Количество переменных при каскадном присваивании
С помощью каскадного присваивания один объект можно присвоить разному количеству переменных.
a = b = 5
a = b = c = 5
a = b = c = d = 5
a = b = c = d = e = 5
Количество переменных не ограничивается двумя или тремя.
11. Каскадное присваивание строки
С помощью каскадного присваивания можно работать со строкой:
first_text = second_text = 'Hello'
Теперь обе переменные ссылаются на строку 'Hello'.
print(first_text)
print(second_text)
Результат:
Hello
Hello
12. Каскадное присваивание вещественного числа
first_price = second_price = 99.5
print(first_price)
print(second_price)
Результат:
99.5
99.5
13. Переменная справа при каскадном присваивании
Справа можно использовать не только сам объект, но и уже созданную переменную.
value = 'Hello'
a = b = value
Теперь переменные a, b и value ссылаются на строку 'Hello'.
print(value)
print(a)
print(b)
Результат:
Hello
Hello
Hello
Ещё пример:
value = 25
first_number = second_number = value
print(first_number)
print(second_number)
Результат:
25
25
14. Функция справа при каскадном присваивании
Справа можно использовать результат работы функции len().
a = b = len('Hello')
Длина строки 'Hello' равна 5.
Поэтому переменные a и b будут ссылаться на число 5.
print(a)
print(b)
Результат:
5
5
Ещё пример:
text = 'Python'
first_length = second_length = len(text)
print(first_length)
print(second_length)
Результат:
6
6
15. Множественное присваивание
Множественное присваивание позволяет создать несколько переменных в одной строке и присвоить им разные объекты.
a, b = 1, 2
Переменная a получает объект 1.
Переменная b получает объект 2.
print(a)
print(b)
Результат:
1
2
16. Множественное присваивание трём переменным
a, b, c = 1, 2, 3
Переменные и объекты соответствуют друг другу по порядку:
a получает 1
b получает 2
c получает 3
Проверим:
print(a)
print(b)
print(c)
Результат:
1
2
3
17. Множественное присваивание разных изученных типов
С помощью множественного присваивания можно использовать целые числа, вещественные числа и строки.
age, price, first_name = 25, 99.5, 'Anna'
Теперь:
print(age)
print(price)
print(first_name)
Результат:
25
99.5
Anna
18. Переменная справа при множественном присваивании
Справа можно использовать ранее созданную переменную.
value = 'Hello'
a, b = 25, value
Переменная a получает число 25.
Переменная b получает значение переменной value.
print(a)
print(b)
Результат:
25
Hello
Ещё пример:
price = 99.5
product_name, product_price = 'Phone', price
print(product_name)
print(product_price)
Результат:
Phone
99.5
19. Функция справа при множественном присваивании
Справа можно использовать результат работы функции len().
text = 'Hello'
a, b = len(text), 10
print(a)
print(b)
Результат:
5
10
20. Обмен значений переменных
Иногда нужно поменять местами значения двух переменных.
Создадим две переменные:
a = 1
b = 2
До обмена:
print(a)
print(b)
Результат:
1
2
Нужно сделать так, чтобы в a находилось 2, а в b находилось 1.
21. Обмен значений с временной переменной
Без множественного присваивания для обмена значений нужна временная переменная.
a = 1
b = 2
c = a
a = b
b = c
Разберём код по шагам.
Сначала сохраняем значение a во временной переменной c:
c = a
Теперь:
a = 1
b = 2
c = 1
После этого записываем значение b в переменную a:
a = b
Теперь:
a = 2
b = 2
c = 1
Затем записываем сохранённое значение c в переменную b:
b = c
В результате:
a = 2
b = 1
c = 1
Проверим:
print(a)
print(b)
Результат:
2
1
22. Обмен значений с множественным присваиванием
В Python значения двух переменных можно поменять местами одной строкой:
a = 1
b = 2
a, b = b, a
После выполнения строки:
a, b = b, a
значения поменяются местами.
print(a)
print(b)
Результат:
2
1
Полный пример:
a = 1
b = 2
print(a)
print(b)
a, b = b, a
print(a)
print(b)
Результат:
1
2
2
1
Обмен значений — это небольшой распространённый алгоритмический приём, который встречается в более крупных задачах.
23. Обмен строк
Менять местами можно не только числа, но и строки.
first_name = 'Anna'
last_name = 'Ivanova'
first_name, last_name = last_name, first_name
Теперь:
print(first_name)
print(last_name)
Результат:
Ivanova
Anna
24. Количество переменных и объектов должно совпадать
При множественном присваивании количество переменных слева должно совпадать с количеством объектов справа.
Правильно:
a, b = 1, 2
Слева две переменные и справа два объекта.
Правильно:
a, b, c = 1, 2, 3
Слева три переменные и справа три объекта.
25. Слишком много объектов
В этом примере слева две переменные, а справа три объекта:
a, b = 1, 2, 3
Такой код приведёт к ошибке.
Количество не совпадает:
2 переменные
3 объекта
26. Недостаточно объектов
В этом примере слева три переменные, а справа два объекта:
a, b, c = 1, 2
Такой код тоже приведёт к ошибке.
Количество не совпадает:
3 переменные
2 объекта
27. Каскадное и множественное присваивание
Каскадное присваивание присваивает один объект нескольким переменным:
a = b = c = 10
Все переменные получают один объект:
a получает 10
b получает 10
c получает 10
Множественное присваивание присваивает разные объекты разным переменным:
a, b, c = 10, 20, 30
Каждая переменная получает свой объект:
a получает 10
b получает 20
c получает 30
Домашнее задание
Часть 1. Комментарии в Visual Studio Code
Задание 1
Создать три комментария на отдельных строках:
- комментарий-подсказку;
- комментарий-напоминание;
- комментарий с описанием программы.
Пример:
# Эта программа выводит данные пользователя
Задание 2
Создать комментарий из четырёх строк.
Перед каждой строкой поставить символ #.
Задание 3
Добавить комментарии после строк кода:
first_name = 'Anna'
age = 25
product_price = 1500.5
text_length = len('Hello')
В комментариях объяснить, что находится в каждой переменной.
Пример:
age = 25 # Возраст пользователя
Задание 4
Дан код:
print('First')
print('Second')
print('Third')
Закомментировать строку:
print('Second')
Запустить программу и записать результат.
Задание 5
Дан код:
print('First')
print('Second')
print('Third')
print('Fourth')
print('Fifth')
Выделить все пять строк в Visual Studio Code и закомментировать их с помощью горячей клавиши.
На macOS использовать:
Command + /
На Windows использовать:
Ctrl + /
После этого той же комбинацией снова раскомментировать строки.
Задание 6
Создать программу:
first_name = 'Anna'
last_name = 'Ivanova'
age = 25
print(first_name)
print(last_name)
print(age)
Добавить:
- комментарий перед программой;
- комментарий после каждой созданной переменной;
- одну закомментированную строку
print().
Часть 2. Каскадное присваивание
Задание 7
С помощью каскадного присваивания создать две переменные со значением 10.
Вывести обе переменные через отдельные вызовы print().
Задание 8
С помощью каскадного присваивания создать три переменные со строкой 'Python'.
Вывести все переменные через отдельные вызовы print().
Задание 9
С помощью каскадного присваивания создать четыре переменные со значением 3.14.
Задание 10
Сначала создать переменную:
value = 'Hello'
Затем с помощью каскадного присваивания создать переменные a и b, используя справа переменную value.
Вывести:
print(value)
print(a)
print(b)
Задание 11
С помощью каскадного присваивания сохранить длину строки 'Programming' в двух переменных.
Использовать функцию len().
Вывести обе переменные.
Задание 12
Переписать обычное присваивание с помощью каскадного.
Было:
a = 25
b = 25
Нужно записать одной строкой.
Задание 13
Переписать обычное присваивание с помощью каскадного.
Было:
first_text = 'Hello'
second_text = 'Hello'
third_text = 'Hello'
Нужно записать одной строкой.
Часть 3. Множественное присваивание
Задание 14
С помощью множественного присваивания создать:
a со значением 10
b со значением 20
Вывести обе переменные.
Задание 15
С помощью множественного присваивания создать:
a со значением 1
b со значением 2
c со значением 3
Вывести все переменные.
Задание 16
С помощью множественного присваивания создать три переменные:
- переменную с целым числом;
- переменную с вещественным числом;
- переменную со строкой.
Имена переменных должны быть понятными и записанными в стиле snake_case.
Задание 17
Сначала создать переменную:
value = 'Python'
Затем с помощью множественного присваивания создать:
a со значением 25
b со значением переменной value
Вывести a и b.
Задание 18
Сначала создать переменную:
price = 99.5
Затем с помощью множественного присваивания создать переменные:
product_name со строкой 'Phone'
product_price со значением переменной price
Задание 19
Переписать обычное присваивание с помощью множественного.
Было:
a = 10
b = 20
Нужно записать одной строкой.
Задание 20
Переписать обычное присваивание с помощью множественного.
Было:
first_name = 'Anna'
last_name = 'Ivanova'
age = 25
Нужно записать одной строкой.
Часть 4. Обмен значений
Задание 21
Создать переменные:
a = 10
b = 20
Поменять их значения местами с помощью временной переменной c.
После обмена вывести a и b.
Задание 22
Создать переменные:
a = 10
b = 20
Поменять их значения местами с помощью множественного присваивания:
a, b = b, a
После обмена вывести a и b.
Задание 23
Создать переменные:
first_name = 'Anna'
last_name = 'Ivanova'
Поменять их значения местами с помощью множественного присваивания.
Задание 24
Определить значения переменных после выполнения кода:
a = 5
b = 10
a, b = b, a
Ответить:
Что находится в a?
Что находится в b?
Задание 25
Определить значения переменных после выполнения кода:
first_text = 'Hello'
second_text = 'Python'
first_text, second_text = second_text, first_text
Ответить:
Что находится в first_text?
Что находится в second_text?
Часть 5. Поиск ошибок
Задание 26
Определить, какие записи приведут к ошибке:
a, b = 1, 2
a, b = 1, 2, 3
a, b, c = 1, 2, 3
a, b, c = 1, 2
first_name, age = 'Anna', 25
a, b, c = 10, 20, 30, 40
Объяснить каждую ошибку через количество переменных и объектов.
Задание 27
Исправить неправильное множественное присваивание:
a, b = 10, 20, 30
Задание 28
Исправить неправильное множественное присваивание:
a, b, c = 'Hello', 'Python'
Задание 29
Исправить неправильное множественное присваивание:
first_name, last_name, age = 'Anna', 'Ivanova'
Часть 6. Итоговое задание
Задание 30
Создать программу в Visual Studio Code.
В программе нужно:
- написать комментарий с описанием программы;
- с помощью каскадного присваивания создать две переменные с одинаковым значением;
- с помощью множественного присваивания создать три переменные с разными значениями;
- вывести все созданные переменные через отдельные вызовы
print(); - поменять местами значения двух переменных;
- временно закомментировать одну строку
print(); - добавить комментарии после нескольких строк кода.
Использовать только изученные типы данных и функции.