Итак, как же все таки сохранить какой-то объект в памяти компьютера, как им потом восспользоваться, и что такое переменная в языке Python?
Давайте попробуем в этом разобраться, а заодно зацепим вопрос что такое объекты в Python, и все ли является объектами…
Итак, что такое переменная? По поределению: это именованная область памяти, значение которой может меняться по ходу выполнения программы. Но что это все значит? Как понять что такое именованная область памяти? А как это значение меняется? А в случае с Python, еще и тип данных может меняться… Словом вопросов много)!
Что такое переменная в Python, как ее создать.
Простым языком, переменная это некий контейнер в памяти нашего компьютера, который имеет имя, и мы можем что-то положить в этот контейнер, вытащить, поменять его значение, и даже свойства изменить!
Так вот, для того, что бы создать такой контейнер необходимо придумать ему имя и обязательно что-то в него положить. Если не положить ничего, то Python не создаст контейнер!
Давайте посмотрим на примере:
number = 10 # мы создали переменную (контейнер) с именем number и с помощью оператора присваивания "=" положили значение 10
Или другой пример:
name = "Oleg"
Аналогично с number, мы создали переменную name и положили в нее значение Oleg.
Что необходимо сделать, что бы в этот контейнер что-то положить?
Все просто, значение в переменную попадает только тогда, когда между именем переменной и значением мы напишем знак “=”, и этот знак в данном случае называется оператором присваивания!
Получить доступ к значению в переменной
Все очень просто, достаточно обратиться по имени к этой переменной, т.е. написать так:
print(number) #и на консоль выведется результат, в нашем случае - 10.
Изменить значение переменной в Python
Более того, мы еще и можем изменить значение этой переменной! А почему бы и нет? Представьте себе какую-то коробку, в которой лежит допустим, гоночная машинка, детская игрушка! Мы можем ее достать с коробки? Да, можем! Мы можем вместо машинки положить в коробку что-то другое, скажем тенисный мяч? Да, можем! Вот точно так же и со значением переменной!
number = 10 #Выведем на консоль значение, которое находится в переменной number print(number) # получим результат 10 # изменим значение переменной number = 15 # снова выведем на консоль значение, которое находится в переменной number print(number) # и получим результат 15
От сюда, просто сделать вывод, что значение переменной действительно изменилось!
Стоит отдельно сказать несколько слов о типе значения, которое хранится в переменной: оно тоже может быть разным, и в любой момент выполнения программы может тоже изменяться. Что такое не строгая типизация в Python, какие типы бывают, что такое преобразование типов данных мы поговорим в другой статье.
Переменная в языке Python – правила написания
Да, действительно, есть и такие правила, и они есть не только в Python, но и во всех других языках программирования. Итак, основные правила наименования переменных:
- Не начинаем имя перенной с цифры;
- Не начинаем с спец симвлов, т.е. @, #, $, %, ! и т.п.
- Не желательно начинать с больших букв, все остальные маленькие (допускается называть переменную только бошими буквами в том случае, если подразумеваем, что ее значение это некая константа, которую изменять не желательно)
- Очень важно давать имена переменным осмысленные, что бы другим программистам было понятно что именно лежит в этой переменной, например: name – имя какое-то, age – возраст, price – цена, и т.п.
Подводим итог: переменная в языке Python – это имя некотого объекта, к которому мы можем обращаться.
Какие имена переменных недопустимы в языке Python
Существует несколько правил, как не стоит или даже запрещено называть переменные:
- не нужно называть переменные словами зарезервированных команд, их еще называют ключевыми словами, а миенно:
False def if raise None del import return True elif in try and else is while as except lambda with assert finally nonlocal yield break for not class from or continue global pass
Что бы получить список ключевых слов, вы всегда можете написать следующий код:
import keyword print(keyword.kwlist)