Переменные

09.05.2021 5 Автор : Дмитрий Николаевич
Переменные

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

Мы знаем, что команда input() сообщает программе, что нужно подождать, пока пользователь введет что-нибудь, и то, что ввел пользователь нужно запомнить.

Возьмем, к примеру, такой код:

hensuu = input()
# ПРИМЕЧАНИЕ АВТОРА: 変数 или hensū переводится как переменная
print('Вы ввели текст:', hensuu)
Первая строка сообщает программе, что нужно сохранить в памяти то, что введет пользователь, и дальше это место в памяти будет называться именем hensuu.
Соответственно, вторая строка сообщает программе, что нужно посмотреть, что лежит в памяти под именем hensuu и это нужно вывести.

Такие «места в памяти» называются переменными. Любая переменная имеет имя и значение.

Имя переменной

  1. В имени переменной можно использовать только латинские буквы a-z, A-Z, цифры и символ нижнего подчеркивания _ ;
  2. Имя переменной не может начинаться с цифры;
  3. Имя переменной по возможности должно отражать ее назначение.

Значение переменной

Значение переменной — это сохраненная в ней информация. Это может быть текст, число и т. д.

Знак = (знак равно) является оператором присваивания. Он присваивает значение, которое находится справа от знака =, переменной, которая находится слева от знака =.

В нашем случае, переменная это то, что пользователь внес командой input(). Это текстовое значение — строка. То есть, переменная сохраняет в себе значение строки. Некоторые говорят, что переменная имеет строковый тип данных.

Значения переменной можно менять.

print('Как тебя зовут?')
name = input()
print('Приветствую, ', name)
name = 'Макото'
print('Привет, ', name)

Оператор присваивания сообщает переменной то или иное значение независимо от того, была ли эта переменная введена ранее. Вы можете менять значение переменной, записав еще один оператор присваивания. Если у нас имеется переменная, мы можем делать с ее значением все что угодно — например, присвоить другой переменной:

название_переменной = значение_переменной

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

Следующий код приведет к ошибке:

'Даичи' = virtual_vocalist
Синтаксическая ошибка: не удается назначить литералу

Множественное присваивание

В Python можно за одну инструкцию присваивания изменять значение сразу нескольких переменных.

name, surname, engine = 'Даичи', 'Акиба', 'DeepVocal'

print('Имя: ', name, 'Фамилия: ', surname, 'Движок: ', engine)

Этот код можно записать и так:

name = 'Даичи'
surname = 'Акиба'
engine = 'DeepVocal'

print('Имя: ', name, 'Фамилия: ', surname, 'Движок: ', engine)

Отличие этих двух способов состоит в том, что множественное присваивание в первом способе присваивает значение двум переменным одновременно.

Если нужно считать текст с клавиатуры и присвоить его в качестве значения переменным, то можно написать так:

name, surname, engine = input(), input(), input()

print ('Имя: ', name, 'Фамилия: ', surname, 'Движок: ', engine)

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

Множественное присваивание удобно использовать, когда нужно обменять значения двух переменных. Это делается так:

name1 = 'Дмитрий'
name2 = 'Даичи'
name1, name2 = name2, name1

Примечания

  • Названия переменных ничего не говорит интерпретатору, и даже в очень хорошо названной переменной не появится нужно значение, пока его туда не записать.
  • Новое значение переменной вытесняет старое. Важно представлять, чему равно значение переменной в каждый момент времени.
  • Переменные можно вводить в любой момент (не только в самом начале программы)
  • Запрещено использовать ключевые (зарезервированные) слова в качестве переменной. К ключевым словам относятся:
  1. False
  2. True
  3. None
  4. and
  5. with
  6. as
  7. assert
  8. break
  9. class
  10. continue
  11. def
  12. del
  13. elif
  14. else
  15. except
  16. finally
  17. try
  18. for
  19. from
  20. global
  21. if
  22. import
  23. in
  24. is
  25. lambda
  26. nonlocal
  27. not
  28. or
  29. pass
  30. raise
  31. return
  32. while
  33. yield

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

На этом у меня пока все. Задавайте свои вопросы в комментарии или в форму обратной связи.

В качестве примеров были упомянуты таких персонажей как:

  • Даичи Акиба, виртуальный вокалист, разрабатываемый Дмитрием Николаевичем (также известным как KagamineP) для синтезаторов вокала UTAU и DeepVocal.