Python: Что такое переменная

Представьте, что нужно напечатать фразу Father! два раза:

print('Father!')
print('Father!')

Такой способ вполне подойдёт, если фраза встречается всего пару раз. Но что, если она будет использоваться часто, в разных частях программы? Тогда придётся копировать одно и то же выражение снова и снова.

А что будет, если фразу нужно изменить — например, заменить Father! на Mother!? Придётся искать и исправлять все вхождения вручную. Это неудобно и приводит к ошибкам.

Что делать вместо копирования

Чтобы не дублировать одну и ту же строку, её можно сохранить в переменной:

greeting = 'Father!'
print(greeting)
print(greeting)

Результат:

Father!
Father!

Мы создали переменную с именем greeting и записали в неё строку Father!. Теперь вместо текста можно использовать имя переменной. Программа подставляет значение переменной туда, где она используется.

Что такое переменная

Переменная — это имя, за которым прячутся данные. Она нужна, чтобы:

  • Использовать одни и те же данные несколько раз;
  • удобно обновлять значение в одном месте;
  • сделать код понятнее.

Когда интерпретатор доходит до строки print(greeting), он сначала подставляет содержимое переменной, а потом выполняет вывод.

Имена переменных

Имена переменных придумывает сам программист. В Python можно использовать:

  • Латинские буквы (a–z, A–Z),
  • цифры (но не в начале),
  • нижнее подчёркивание _.

Примеры допустимых имён: greeting, name1, hello_world.

🔠 Важно: Python различает строчные и заглавные буквы. Переменные greeting, Greeting и GREETING — это три разные переменные.

💡 Рекомендации по именованию

Python-разработчики придерживаются определённых соглашений по стилю — стандарта PEP8:

  • Используйте строчные буквы с подчёркиванием между словами:

    user_name, error_message, greeting_text

  • Имена должны быть понятными — не a или x, а name, message, counter.

  • Не используйте русские слова, даже если они записаны латиницей:

    🚫 privet, mama, stroka

    greeting, text, title

Несколько переменных в программе

В одной программе можно создать сколько угодно переменных. Каждая хранит свои данные и не мешает другим:

greeting1 = 'Father!'
print(greeting1)
print(greeting1)

greeting2 = 'Mother!'
print(greeting2)
print(greeting2)

Где создавать переменные

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

Задание

Создайте переменную с именем motto и содержимым What Is Dead May Never Die!. Распечатайте содержимое переменной.

Определения

Переменная
способ сохранить информацию и дать ей имя для последующего использования в коде.
Как с вами связаться? 🙃

Команда проекта находится в телеграм-сообществе по ссылке https://ttttt.me/HexletLearningBot. Там можно задать любой вопрос и повлиять на проект

Упражнение не проходит проверку — что делать? 😶

Если вы зашли в тупик, то самое время поговорить с нашим асситентом Тота во вкладке "Обсуждение". Как правильно задать вопрос:

В моей среде код работает, а здесь нет 🤨

Тесты устроены таким образом, что они проверяют решение разными способами и на разных данных. Часто решение работает с одними входными данными, но не работает с другими. Чтобы разобраться с этим моментом, изучите вкладку «Тесты» и внимательно посмотрите на вывод ошибок, в котором есть подсказки.

Мой код отличается от решения учителя 🤔

Это нормально 🙆, в программировании одну задачу можно выполнить множеством способов. Если ваш код прошел проверку, то он соответствует условиям задачи. В редких случаях бывает, что решение подогнано под тесты, но это видно сразу.

Прочитал урок — ничего не понятно 🙄

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

Нашли ошибку? Есть что добавить? Пулреквесты приветствуются

Привет! Я Тота и моя задача помочь в обучении. Чтобы активировать меня, нужно зарегистрироваться или залогиниться, если у вас уже есть аккаунт

Loading...

Ваше упражнение проверяется по этим тестам

1from hexlet.test import expect_output
2
3
4def test(capsys):
5    expected = "What Is Dead May Never Die!"
6    expect_output(capsys, expected)
7

Решение учителя откроется через:

20:00
waiting_clock