The OpenNET Project
Хинт: Запутались в обилии найденных документов в общей системе поиска ? Воспользуйтесь системой контекстного поиска.
 
bsd, linux, cisco, web, palm, unix, ...
Поиск (ключи):  ПРОГРАММЫ СТАТЬИ СОВЕТЫ ФОРУМ
ССЫЛКИ НОВОСТИ (+) MAN'ы ДОКУМЕНТАЦИЯ
OpenSource.com.ua – Диски с Linux, FreeBSD, документация, атрибутика. CD от 5 грн, DVD от 17.95 грн!
ASPLinux 9.2 3CD - 15 грн.
SUSE 9.2 DVD - 24.95 грн.
Debian Sarge 13 CD - 52 грн.
Fedora Core 3 4CD - 20 грн.
Linux XP Pro 4CD - 20 грн.
Mandrake 10.1 4CD - 25 грн.
FreeBSD 5.3 3CD - 15 грн.
Кружка "Linux" белая - 19.95 грн.

Поиск:  Каталог документации / Русская документация / Программирование, языки / Python

1.10. Определение переменных

После того, как вы познакомились со словарями, кортежами и списками, давайте вернемся к нашему примеру программы — odbchelper.py.

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

Пример 1.24. Определение переменной myParams


if __name__ == "__main__":
    myParams = {"server":"mpilgrim", \
                "database":"master", \
                "uid":"sa", \
                "pwd":"secret"}

Здесь есть несколько интересных моментов. Во-первых, обратите внимание на отступы. Инструкция if является составной и ее тело должно вводиться с отступом, как и тело функции.

Во-вторых, одна инструкция присваивания переменной записана в несколько строк с использованием обратного слэша (“\”) в качестве признака наличия продолжения.

Замечание
Если инструкция разбита на несколько строк с использованием признака наличия продолжения (“\”), строки продолжения могут иметь произвольный отступ. В этом случае строгие правила использования отступов не действуют. Если ваш Python IDE автоматически выставляет отступы для строк продолжения, следует, по-видимому, принять их в качестве умолчания, если у вас нет весомой причины от этого отказаться.
Замечание
Строго говоря, выражения в круглых, квадратных или фигурных скобках (например, определения словарей) могут быть разбиты на несколько строк и без использования явного признака наличия продолжения (“\”). Я предпочитаю использовать обратный слэш даже если в нем нет необходимости, так как, на мой взгляд, это облегчает чтение кода. Но это уже дело вкуса.

В третьих, вы нигде не объявляли переменную myParams, а просто присвоили ей значение. Это соответствует поведению VBScript без опции option explicit. К счастью, в отличии от VBScript, Python не позволит ссылаться на переменную, которой нигде не было присвоено значение — при попытке это сделать будет сгенерировано исключение.

Пример 1.25. Использование несуществующей переменной

>>> x
Traceback (innermost last):
  File "<interactive input>", line 1, in ?
NameError: There is no variable named 'x'
>>> x = 1
>>> x
1

В один прекраснй день вы будете благодарны языку Python за такое поведение.

Дополнительная литература


Закажи себе дистрибутив! Linux и BSD почтой от ЛинуксЦентра:
 1. Mandrakelinux 10.1 Official LC Edition - download version (1DVD) - 250 руб.
 2. Java для Linux (1CD) - 80 руб.
 3. Knoppix 3.7 Russian Edition (1CD) - 90 руб.
 4. Журнал "Системный администратор", 2004 год, декабрь. - 145 руб.
 5. LinuxCenter Games Collection vol.2 (1DVD) - 295 руб.
 6. ASPLinux v10 Express (3CD) - 300 руб.
 7. GoboLinux v. 011 (1CD) - 95 руб.
 8. TheOpenCD v2.0 - лучшее свободное ПО для Windows (1CD) - 95 руб.
 9. Debian GNU/Linux Sarge, октябрь 2004 (2DVD) - 500 руб.
 10. FreeBSD PORTS Winter 2004 Update DVD (1 DVD) - 250 руб.

Закладки на сайте
Проследить за страницей
Created 1996-2005 by Maxim Chirkov  
ДобавитьРекламаВебмастеруЦУПГИД  
RUNNet TopList