> For the complete documentation index, see [llms.txt](https://timosii.gitbook.io/py_tutorial/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://timosii.gitbook.io/py_tutorial/vvedenie-v-python/peremennye.md).

# Переменные\*

* Переменная — ссылка на объект в памяти. Можно представлять её как бирку — она связывается с объектом и обладает именем. А сам объект содержит значение и тип данных.
* Имя переменной не должно совпадать с *ключевыми словами*:

```python
import keyword
print(keyword.kwlist)
# ['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await',
# 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except',
# 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is',
# 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try',
# 'while', 'with', 'yield']
```

* Рекомендации (согласно стандарту PEP8):
  * имена переменных должны состоять из символов нижнего регистра
  * слова должны разделяться символом подчеркивания
  * имена переменных не могут начинаться с цифр
  * имена переменных не могут переопределять *встроенные имена (built-ins)*:

```python
dir(__builtins__) # список всех встроенных имен
# встроенные имена - это имена функций, классов и переменных,
# которые Python загружает автоматически
# встроенные имена технически можно использовать в качестве имени
# для переменной (ошибки не будет), но это не рекомендуется
```
