Глава 0. Установка Python
Tempora mutantur nos et mutamur in illis. (Меняются времена, и мы меняемся вместе с ними.)
Содержание главы
Погружение
Перед тем, как вы сможете начать программировать на Python 3, вы должны его установить. Или это уже сделано?
0.2 Какой Python подходит вам?
Если вы собираетесь работать с Python на удалённом сервере, ваш хостинг-провайдер, возможно, уже установил Python 3. Если у вас домашний компьютер с Linux, Python 3 тоже может быть уже установлен. В большинстве популярных дистрибутивов GNU/Linux по умолчанию установлен Python 2, немногие (но их число растёт) также включают Python 3. Mac OS X включает консольную версию Python 2, но до сих пор не включает Python 3. В Microsoft Windows не входит никакая версия Python. Но не отчаивайтесь! Python можно установить в несколько кликов, независимо от вашей операционной системы.
Простейший способ проверить, установлен ли Python 3 в вашем Linux или Mac OS X, – это открыть командную строку. В Linux поищите программу «Терминал» («Terminal») в меню приложений («Applications»). Она может находиться в подменю «Стандартные» («Accessories») или «Системные утилиты» («System»). В Mac OS X в папке /Application/Utilities/ должно быть приложение «Terminal.app».
Получив приглашение командной строки, просто введите python3
(строчными буквами, без пробелов) и посмотрите, что произойдёт. На моей домашней Linux-системе Python 3 уже установлен, и эта команда запускает интерактивную оболочку Python.
mark@atlantis:~$ python3
Python 3.1 (r31:73572, Jul 28 2009, 06:52:23)
[GCC 4.2.4 (Ubuntu 4.2.4-1ubuntu4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
(Чтобы выйти из интерактивной оболочки Python, введите exit()
и нажмите Enter.)
Мой хостинг-провайдер тоже предоставляет Linux с доступом к командной строке, но Python 3 на сервере не установлен. (Фу!)
mark@manganese:~$ python3
bash: python3: command not found
Итак, вернёмся к вопросу, с которого начался этот раздел: «Какой Python вам подходит?» Любой, который работает на вашем компьютере.
Читайте далее инструкции по установке на Windows или перейдите к установке на Mac OS X, на Ubuntu Linux или на другие платформы.
0.3 Установка на Microsoft Windows
Сегодня доступно две архитектуры Windows: 32-разрядная и 64-разрядная . Конечно, существуют и разные версии Windows (XP, Vista, Windows 7), но Python работает на всех из них. Здесь важнее различие между 32-разрядной и 64-разрядной архитектурами. Если вы не знаете, какая архитектура у вашего компьютера, это, вероятно, 64 бита.
Посетите python.org/download/ и скачайте соответствующий установочный пакет Python 3 для вашей архитектуры Windows. Ваш выбор будет примерно таким:
- Python 3.1 Windows installer (Windows binary — does not include source)
- Python 3.1 Windows AMD64 installer (Windows AMD64 binary — does not include source)
Я не хочу публиковать здесь прямые ссылки, потому что в Python постоянно происходят мелкие обновления, и я не хочу оказаться крайним, если вы вдруг пропустите важные обновления. Устанавливайте самую свежую версию Python 3.x, если только у вас нет каких-либо объективных причин поступить иначе.
По окончании загрузки откройте .msi-файл. Windows покажет предупреждение о безопасности, потому что вы пытаетесь запустить исполняемый код. Официальный установочный пакет Python имеет цифровую подпись Python Software Foundation, некоммерческой организации, курирующей разработку Python. Опасайтесь подделок!
Нажмите кнопку «Запустить» («Run»), чтобы запустить программу установки Python 3.
Первый вопрос, который задаёт программа установки: установить Python 3 для всех пользователей компьютера или только для вас. По умолчанию выбран ответ «установить для всех пользователей», и если у вас нет причин выбирать другой вариант, следует оставить выбор по умолчанию. (Одна из возможных причин установки «только для себя» – это установка на рабочий компьютер, где ваша учётная запись не имеет административных прав. Но в таком случае почему вы устанавливаете Python без разрешения системного администратора? Не впутывайте меня в неприятности!)
Нажмите кнопку «Далее» («Next»), чтобы подтвердить выбор типа установки.
Затем программа установки предложит выбрать каталог назначения. По умолчанию все версии Python 3.1.x предлагают установку в каталог C:\Python31\, для большинства пользователей это должно подойти; если у вас нет особых причин изменить этот параметр, не меняйте его. Если вы используете отдельный логический диск для установки приложений, вы можете выбрать его, пользуясь встроенными инструментами, или просто вписать путь в соответствующем поле ввода. Python можно установить не только на диск C:, но на любой диск, в любую папку.
Нажмите кнопку «Далее» («Next»), чтобы подтвердить выбор каталога установки.
Следующая страница выглядит сложнее, но на самом деле это не так. Как во многих других программах установки, у вас есть возможность отказаться от установки любого из компонентов Python 3. Если свободного пространства на диске совсем мало, вы можете исключить некоторые компоненты.
- Опция Регистрировать расширения (Register Extensions) позволяет вам запускать скрипты Python (файлы с расширением .py) двойным кликом по иконке. Рекомендуется, но не обязательно. (Эта опция не занимает места на диске, поэтому нет особого смысла в её исключении.)
- Tcl/Tk – это графическая библиотека, используемая оболочкой Python Shell, которая будет использоваться на протяжении всей книги. Я настоятельно рекомендую оставить эту опцию.
- Опция Документация (Documentation) устанавливает файл справки, содержащий значительную часть информации с docs.python.org.
- Полезные скрипты (Utility Scripts) включают скрипт 2to3.py, подробнее о котором вы узнаете ниже. Необходим, если вы хотите узнать о переносе на Python 3 существующего кода, написанного на Python 2. Если у вас нет существующего кода на Python 2, можете выключить эту опцию.
- Тестовый набор (Test Suite) – коллекция скриптов, используемых для тестирования самого интерпретатора Python. В этой книге мы их использовать не будем, да и я никогда их не использовал при программировании на Python. Совершенно необязательная опция.
Если вы не знаете точно, сколько у вас на диске места, нажмите кнопку «Использование диска» («Disk Usage»). Программа установки покажет список логических дисков, посчитает, сколько пространства доступно на каждом из них и сколько останется после установки.
Нажмите кнопку «OK», чтобы вернуться на страницу выбора компонентов.
Если вы решите отключить опцию, нажмите на кнопку перед ней и в выпавшем меню выберите «Компонент будет полностью недоступен» («Entire feature will be unavailable»). Например, исключение тестового набора сэкономит вам 7908 Кбайт дискового пространства.
Нажмите кнопку «Далее» («Next»), чтобы подтвердить выбор опций.
Программа установки скопирует все необходимые файлы в выбранный каталог назначения. (Это происходит так быстро, что скриншот удалось сделать только с третьей попытки!)
Нажмите кнопку «Готово» («Finish»), чтобы закрыть программу установки.
В меню «Пуск» должен появиться новый пункт под названием Python 3.1. Внутри него будет программа IDLE. Кликните на ней, чтобы запустить интерактивную оболочку Python Shell.
Перейти к использованию оболочки Python Shell.
0.4 Установка на Mac OS X
Все современные компьютеры Macintosh используют процессоры Intel (как и большинство компьютеров с Windows). Старые Mac'и использовали процессоры PowerPC. Вам не обязательно понимать разницу между ними, потому что для всех Mac'ов предназначен один установочный пакет.
Посетите python.org/download/ и загрузите установочный пакет для Macintosh. Он будет называться примерно так: Python 3.1 Mac Installer Disk Image, номер версии может быть другим. Загружайте именно версию 3.x, а не 2.x.
Ваш браузер должен автоматически примонтировать образ диска и открыть окно Finder, чтобы показать вам его содержимое. (Если это не произошло, вам необходимо найти образ диска в папке загрузок и примонтировать его, кликнув на нём дважды. Он будет называться примерно так: python-3.1.dmg.) Образ диска содержит несколько текстовых файлов (Build.txt, License.txt, ReadMe.txt) и собственно установочный пакет Python.mpkg.
Дважды кликните на установочном пакете Python.mpkg, чтобы запустить программу установки Python.
Первая страница программы установки даёт краткое описание и отсылает к файлу ReadMe.txt (который вы не читали, ведь так?) за более подробными сведениями.
Нажмите кнопку «Продолжить» («Continue») для продолжения установки.
Следующая страница содержит действительно важные сведения: для Python требуется Mac OS X 10.3 или более поздняя версия. Если вы всё ещё используете Mac OS X 10.2, вам действительно стоит обновиться. Apple перестала выпускать обновления безопасности для вашей операционной системы, и компьютер находится под возможной угрозой, даже когда просто подключается к Интернету. Кроме того, на ней не работает Python 3.
Нажмите кнопку «Продолжить» («Continue»).
Как все порядочные программы установки, программа установки Python показывает лицензионное соглашение об использовании программного обеспечения. Python – это открытое программное обеспечение, и его лицензия одобрена организацией Open Source Initiative. На протяжении истории Python у него были разные владельцы и спонсоры, каждый из которых оставил свой след в лицензии. Но конечный результат таков: исходный код Python открыт, и его можно использовать на любой платформе, для любых целей, без платы и обязательств.
Нажмите кнопку «Продолжить» («Continue») ещё раз.
Из-за особенностей стандартного механизма установки Apple вы должны «согласиться» с лицензией, чтобы выполнить установку. Поскольку Python – открытое программное обеспечение, «согласие» с лицензией скорее расширяет ваши права, нежели ограничивает их.
Нажмите кнопку «Согласен» («Agree») для продолжения.
Следующий экран позволяет изменить место установки. Python обязательно надо устанавливать на системный диск, но из-за ограничений программы установки это не проверяется. По правде говоря, мне никогда не приходилось изменять место установки.
В этом экране можно также уточнить список устанавливаемых компонентов, выбрав или исключив некоторые из них. Если вы хотите это сделать, нажмите кнопку «Компоненты» («Customize»), в противном случае нажмите «Установить» («Install»).
Если вы хотите произвести выборочную установку, программа установки покажет следущий список компонентов:
- Фреймворк Python (Python Framework). Это основная часть Python, она всегда выбрана и неактивна, потому что должна быть обязательно установлена.
- Графические приложения (GUI Applications) включают IDLE – графическую оболочку Python, которую вы будете использовать на протяжении всей книги. Я настоятельно рекомендую оставить эту опцию включённой.
- Инструменты командной строки UNIX (UNIX command-line tools) включают приложение командной строки python3. Эту опцию я тоже настоятельно рекомендую оставить.
- Документация Python (Python Documentation) содержит значительную часть информации с docs.python.org.
- Инструмент обновления профиля оболочки (Shell profile updater) управляет обновлением вашего профиля оболочки (используемого в Terminal.app) и обеспечивает нахождение данной версии Python в путях поиска программ вашей оболочки. Вероятно, вам не потребуется изменять этот пункт.
- Опцию Исправить системный Python (Fix system Python) изменять не нужно. (Она заставляет ваш «мак» использовать Python 3 как интерпреатор по умолчанию для всех скриптов на Python, включая встроенные системные скрипты от Apple. Будет очень плохо, потому что большинство скриптов написаны на Python 2, и они перестанут правильно работать под Python 3.)
Нажмите кнопку «Установить» («Install») для продолжения.
Для того, чтобы установить системные фреймворки и библиотеки в /usr/local/bin/, программа установки спросит у вас пароль администратора. Без привилегий администратора установить Python на Mac нельзя.
Нажмите кнопку «OK», чтобы начать установку.
Программа установки будет показывать индикатор прогресса во время установки выбранных компонентов.
Если всё пройдёт правильно, программа установки покажет большую зелёную галку, означающую, что установка завершена успешно.
Нажмите кнопку «Закрыть» («Close»), чтобы выйти из программы установки.
Если вы не меняли место установки, свежеустановленные файлы будут располагаться в папке Python 3.1 внутри папки /Applications. Наиболее важная её часть – IDLE, графическая оболочка Python.
Дважды кликните по IDLE, чтобы запустить оболочку Python.
Оболочка Python – это то место, где вы проведёте бо́льшую часть времени, изучая Python. Во всех примерах в этой книге предполагается, что знаете, как найти оболочку Python Shell.
Перейти к использованию оболочки Python.
0.5 Установка на Ubuntu Linux
Современные дистрибутивы Linux подкреплены обширными репозиториями предкомпилированных приложений (пакетов), готовых к установке. Точные сведения могут отличаться от дистрибутива к дистрибутиву. В Ubuntu Linux самый простой способ установить Python 3 – через приложение «Установка/удаление» («Add/Remove») в меню «Приложения» («Applications»).
Когда вы впервые запускаете «Установку/удаление», отображается список приложений по категориям. Некоторые из них уже установлены, но бо́льшая часть – нет. Репозиторий содержит более 10 000 приложений, поэтому вы можете применить различные фильтры, чтобы просмотреть меньшие фрагменты репозитория. Фильтр по умолчанию – «Приложения, поддерживаемые компанией Canonical» («Canonical-maintained applications») – показывает небольшое подмножество из общего числа приложений: только те, что официально поддерживаются компанией Canonical, создающей и поддерживающей Ubuntu Linux.
Python 3 не поддерживается Canonical, поэтому сначала выберите из выпадающего меню фильтров «Все Open Source приложения» («All Open Source applications»).
После переключения фильтра на отображение всех открытых приложений сразу же воспользуйтесь строкой поиска, чтобы найти «python 3».
Теперь список приложений сократился до тех, которые соответствуют запросу «python 3». Нужно отметить два пакета. Первый – «Python (v3.0)». Он содержит собственно интерпретатор Python.
Второй пакет, который вам нужен, находится непосредственно над первым — «IDLE (using Python-3.0)». Это графическая оболочка Python, которую вы будете использовать на протяжении всей книги.
После того, как вы отметите эти два пакета, нажмите кнопку «Применить изменения» («Apply Changes») для продолжения.
Программа управления пакетами попросит подтвердить, что выхотите установить два пакета: «IDLE (using Python-3.0)» и «Python (v3.0)».
Нажмите кнопку «Применить» («Apply») для продолжения.
Программа управления пакетами будет показывать индикатор выполнения во время загрузки необходимых пакетов из интернет-репозитория Canonical.
После загрузки пакетов программа управления пакетами автоматически начнёт устанавливать их.
Если всё прошло хорошо, программа управления пакетами подтвердит, что оба пакета были успешно установлены. Отсюда вы можете запустить оболочку Python, дважды кликнув по пункту «IDLE», или, нажав кнопку «Закрыть» («Close»), выйти из программы управления пакетами.
Вы всегда сможете запустить оболочку Python, из меню «Приложения» («Applications»), подменю «Программирование» («Programming»), выбрав пункт «IDLE».
Оболочка Python – это то место, где вы проведёте бо́льшую часть времени, изучая Python. Во всех примерах в этой книге предполагается, что знаете, как найти оболочку Python.
Перейти к использованию оболочки Python.
0.6 Установка на другие платформы
Python 3 доступен на множестве разнообразных платформ. В частности, он доступен почти в любом дистрибутиве Linux, BSD и Solaris. Например, RedHat Linux использует программу управления пакетами yum; у FreeBSD свои порты и коллекции пакетов; у SUSE – zypper, у Solaris – pkgadd. Поиск в интернете по словам «Python 3 + название вашей операционной системы» быстро покажет, имеется ли соответствующий пакет Python 3 и как его установить.
0.7 Использование командной оболочки Python
Оболочка Python – это то место, где можно исследовать синтаксис Python, получать интерактивную справку по командам и отлаживать небольшие программы. Графическая оболочка Python – IDLE – включает в себя также неплохой текстовый редактор, поддерживающий подсветку синтаксиса Python. Если у вас пока нет любимого текстового редактора, стоит попробовать IDLE.
Во-первых, сама по себе оболочка Python – замечательная интерактивная песочница для экспериментов с языком. На протяжении всей книги вы будете встречать примеры наподобие этого:
>>> 1 + 1
2
Первые три угловых скобки (>>>
) обозначают приглашение оболочки Python. Их вводить не надо. Это только для того, чтобы показать вам, что этот пример должен выполняться в оболочке Python.
1 + 1
– это, то, что вы вводите. В оболочке вы можете ввести любое корректное выражение или команду языка Python. Не стесняйтесь, она не укусит! Худшее, что может случиться, – это сообщение об ошибке. Команды выполняются сразу (как только вы нажмёте Enter), выражения вычисляются тоже немедленно, и оболочка печатает результат.
2
– результат вычисления этого выражения. Как ожидалось, 1 + 1
является корректным выражением на Python. Результат, конечно же, 2.
Теперь попробуем другой пример.
>>> print('Hello world!')
Hello world!
Довольно просто, правда? Но в оболочке Python можно сделать гораздо больше разных вещей! Если вы где-нибудь застрянете, вдруг забудете команду или какие аргументы нужно передавать какой-либо функции, в оболочке Python вы всегда можете вызвать интерактивную справку. Просто введите help
и нажмите Enter.
>>> help
Type help() for interactive help, or help(object) for help about object.
Перевод сообщения оболочки
Введите help()
для входа в режим интерактивной справки или help(объект)
для получения справки о конкретном объекте.
Есть два режима встроенной справки. Можно получить справку по конкретному объекту, при этом будет просто выведена документация и вы вернётесь к приглашению оболочки Python. Также можно войти в справочный режим, в котором вместо вычислений выражений Python вы просто вводите ключевые слова и названия команд, а в ответ выводится всё, что известно о данной команде.
Чтобы войти в интерактивный справочный режим, введите help()
и нажмите Enter.
>>> help()
Welcome to Python 3.0! This is the online help utility.
If this is your first time using Python, you should definitely check out
the tutorial on the Internet at http://docs.python.org/tutorial/.
Enter the name of any module, keyword, or topic to get help on writing
Python programs and using Python modules. To quit this help utility and
return to the interpreter, just type "quit".
To get a list of available modules, keywords, or topics, type "modules",
"keywords", or "topics". Each module also comes with a one-line summary
of what it does; to list the modules whose summaries contain a given word
such as "spam", type "modules spam".
help>
Перевод сообщений оболочки
Добро пожаловать в Python 3.0! Вы находитесь в режиме оперативной справки.
Если вы используете Python впервые, вам определённо следует ознакомиться с обучающим интернет-курсом на http://docs.python.org/tutorial/.
Введите название модуля, ключевое слово или тему, чтобы получить справку по написанию программ на Python и использованию модулей. Чтобы выйти из справочного режима и вернуться в интерпретатор, просто введите quit
.
Чтобы просмотреть список доступных модулей, ключевых слов и тем справки, введите «modules», «keywords» или «topics». У каждого модуля есть краткое описание его назначения; чтобы получить список модулей, в описании которых встречается определённое слово, например, слово «spam», введите «modules spam».
Обратите внимание, что приглашение изменилось с >>>
на help>
. Это значит, что вы находитесь в режиме интерактивной справки. Здесь вы можете ввести любое ключевое слово, команду, название модуля или функции – что угодно, что может понять Python – и прочитать документацию по нему.
help> print ①
Help on built-in function print in module builtins:
print(...)
print(value, ..., sep=' ', end='\n', file=sys.stdout)
Prints the values to a stream, or to sys.stdout by default.
Optional keyword arguments:
file: a file-like object (stream); defaults to the current sys.stdout.
sep: string inserted between values, default a space.
end: string appended after the last value, default a newline.
help> PapayaWhip ②
no Python documentation found for 'PapayaWhip'
help> quit ③
You are now leaving help and returning to the Python interpreter.
If you want to ask for help on a particular object directly from the
interpreter, you can type "help(object)". Executing "help('string')"
has the same effect as typing a particular string at the help> prompt.
>>> ④
Перевод сообщений оболочки
Вы покидаете режим справки и возвращаетесь в интерпретатор Python. Если вы хотите получить справку о некотором объекте прямо из интерпретатора, можете ввести help(объект). Выполнение help('строка') работает так же, как ввод этой строки в приглашение help>.
- Строка 1. Чтобы получить документацию по функции
print()
, просто введите print и нажмите Enter. Интерактивная справка покажет нечто вроде man-страницы: имя функции, краткое описание, аргументы их значения по умолчанию и так далее. Если документация выглядит не очень понятно, не пугайтесь. В ближайших главах вы получите более полное представление обо всём этом.Перевод сообщений оболочки
Справка по встроенной функции
print
из модуляbuiltins
:Печатает значения в указанный поток или в
sys.stdout
(по умолчанию).Необязательные именованные аргументы:
file
– файлоподобный объект (поток), по умолчаниюsys.stdout
;sep
– строка, вставляемая между значениями, по умолчанию пробел;end
– строка, дописываемая после последнего значения, по умолчанию символ новой строки.
- Строка 13. Конечно, интерактивная справка не всё знает. Если вы введёте что-то, что не является командой Python, модулем, функцией или другим встроенным ключевым словом, интерактивная справка лишь пожмёт своими виртуальными плечами.
Перевод сообщений оболочки
В Python не найдена документация по «PapayaWhip»
- Строка 16. Чтобы выйти из интерактивной справки, введите
quit
и нажмите Enter.Перевод сообщений оболочки
Вы покидаете режим справки и возвращаетесь в интерпретатор Python. Если вы хотите получить справку о некотором объекте прямо из интерпретатора, можете ввести help(объект). Выполнение help('строка') работает так же, как ввод этой строки в приглашение help>.
- Строка 22. Приглашение снова стало
>>>
, чтобы показать, что вы вышли из режима интерактивной справки и вернулись в оболочку Python.
IDLE, графическая оболочка Python, включает ещё и текстовый редактор с подсветкой кода Python.
0.8 Редакторы и IDE для Python
IDLE – не лучший вариант, когда дело доходит до написания программ на Python. Поскольку программирование полезнее начинать изучать с освоения самого языка, многие разработчики предпочитают другие текстовые редакторы и интегрированные среды разработки (Integrated Development Environment, IDE). Я не буду здесь о них подробно рассказывать, но у сообщества Python есть список поддерживающих Python редакторов, покрывающий широкий спектр платформ и лицензий.
Вы также можете взглянуть на список IDE, поддерживающих Python, правда, пока немногие из них поддерживают Python 3. Одна из них – PyDev, плагин для Eclipse, превращающий его в полноценную среду разработки на Python. И Eclipse, и PyDev кроссплатформенные и открытые.
На коммерческом фронте есть Komodo IDE от ActiveState. Его нужно лицензировать для каждого пользователя, но студентам дают скидки, а также есть возможность бесплатно ознакомиться с продуктом в течение ограниченного периода.
Я пишу на Python девять лет, и делаю это в GNU Emacs, а отлаживаю в оболочке Python в командной строке. В разработке на Python нет более правильных или менее правильных способов. Делайте то, что считаете правильным, то, что работает для вас.