справочник по Python. мм isbn 9785932861578 9 785932 861578
Скачать 4.21 Mb.
|
Óðîâåíü ïîäãîòîâêè ÷èòàòåëåé: сðåäíèé Êàòåãîðèÿ: ïðîãðàммèðîâàíèå ISBN 978-5-93286-157-8 9 785932 861578 Python Essential Reference Fourth Edition David Beazley Серия «High tech» Дэвид Бизли Python . Подробный справочник Перевод А. Киселева Главный редактор А. Галунов Зав. редакцией Н. Макарова Выпускающий редактор П. Щеголев Редактор Ю. Бочина Корректор С. Минин Верстка К. Чубаров Бизли Д. Python. Подробный справочник. – Пер. с англ. – СПб.: Символ-Плюс, 2010. – 864 с., ил. ISBN 978-5-93286-157-8 «Python. Подробный справочник» – это авторитетное руководство и деталь- ный путеводитель по языку программирования Python. Книга предназначе- на для практикующих программистов; она компактна, нацелена на суть дела и написана очень доступным языком. Она детально описывает не только ядро языка, но и наиболее важные части стандартной библиотеки Python. Допол- нительно освещается ряд тем, которые не рассматриваются ни в официальной документации, ни в каких-либо других источниках. Читателю предлагается практическое знакомство с особенностями Python, включая генераторы, сопрограммы, замыкания, метаклассы и декораторы. Подробно описаны новые модули, имеющие отношение к разработке многоза- дачных программ, использующих потоки управления и дочерние процессы, а также предназначенные для работы с системными службами и организации сетевых взаимодействий. В полностью переработанном и обновленном четвертом издании улучшена ор- ганизация материала, что позволяет еще быстрее находить ответы на вопросы и обеспечивает еще большее удобство работы со справочником. Книга отража- ет наиболее существенные нововведения в языке и в стандартной библиотеке, появившиеся в Python 2.6 и Python 3. ISBN 978-5-93286-157-8 ISBN 978-0-672-32978-4 (англ) © Издательство Символ-Плюс, 2010 Authorized translation of the English edition © 2009 Pearson Education, Inc. This trans lation is pub lished and sold by permission of Pearson Education, Inc., the owner of all rights to publish and sell the same. Все права на данное издание защищены Законодательством РФ, включая право на полное или час- тичное воспроизведение в любой форме. Все товарные знаки или зарегистрированные товарные зна- ки, упоминаемые в настоящем издании, являются собственностью соответствующих фирм. Издательство «Символ-Плюс». 199034, Санкт-Петербург, 16 линия, 7, тел. (812) 324-5353, www.symbol.ru. Лицензия ЛП N 000054 от 25.12.98. Подписано в печать 30.07.2010. Формат 70×100 1 / 16 . Печать офсетная. Объем 54 печ. л. Тираж 1200 экз. Заказ № Отпечатано с готовых диапозитивов в ГУП «Типография «Наука» 199034, Санкт-Петербург, 9 линия, 12. Посвящается Пауле, Томасу и его будущему брату. Оглавление Об авторе ...............................................................................15 Благодарности ........................................................................17 Введение ................................................................................19 I. Язык программирования Python ..........................................21 1. Вводное руководство ...........................................................23 Вызов интерпретатора ...........................................................23 Переменные и арифметические выражения ..............................25 Условные операторы .............................................................28 Операции ввода-вывода с файлами ..........................................29 Строки ................................................................................30 Списки ................................................................................32 Кортежи ..............................................................................33 Множества ...........................................................................35 Словари ...............................................................................36 Итерации и циклы ................................................................37 Функции .............................................................................39 Генераторы ..........................................................................40 Сопрограммы .......................................................................41 Объекты и классы .................................................................43 Исключения ........................................................................44 Модули ...............................................................................46 Получение справки ...............................................................47 2. Лексические и синтаксические соглашения ...........................48 Структура строк и отступы .....................................................48 Идентификаторы и зарезервированные слова ...........................49 Числовые литералы ..............................................................50 Строковые литералы .............................................................51 Контейнеры .........................................................................54 Операторы, разделители и специальные символы ......................54 Строки документирования .....................................................55 Декораторы .........................................................................55 Кодировка символов в исходных текстах ..................................56 8 Оглавление 3. Типы данных и объекты .......................................................57 Терминология ......................................................................57 Идентичность и тип объекта ...................................................58 Подсчет ссылок и сборка мусора .............................................59 Ссылки и копии ....................................................................60 Объекты первого класса ........................................................61 Встроенные типы представления данных .................................63 Встроенные типы представления структурных элементов программы .........................................75 Встроенные типы данных для внутренних механизмов интерпретатора ............................80 Поведение объектов и специальные методы ..............................84 4. Операторы и выражения .....................................................96 Операции над числами ..........................................................96 Операции над последовательностями .......................................99 Форматирование строк ........................................................ 103 Дополнительные возможности форматирования ..................... 105 Операции над словарями...................................................... 108 Операции над множествами ................................................. 109 Комбинированные операторы присваивания ........................... 109 Оператор доступа к атрибутам (.) ........................................... 110 Оператор вызова функции () ................................................. 110 Функции преобразования .................................................... 111 Логические выражения и значения истинности ...................... 112 Равенство и идентичность объектов ....................................... 113 Порядок вычисления........................................................... 113 Условные выражения .......................................................... 114 5. Структура программы и управление потоком выполнения ... 116 Структура программы и ее выполнение .................................. 116 Выполнение по условию....................................................... 117 Циклы и итерации .............................................................. 117 Исключения ...................................................................... 120 Менеджеры контекста и инструкция with .............................. 126 Отладочные проверки и переменная __debug__ ....................... 128 6. Функции и функциональное программирование ............... 130 Функции ........................................................................... 130 Передача параметров и возвращаемые значения...................... 133 Правила видимости ............................................................. 134 Функции как объекты и замыкания ...................................... 136 Декораторы ....................................................................... 139 Генераторы и инструкция yield ............................................. 141 Сопрограммы и выражения yield ........................................... 143 Оглавление 9 Использование генераторов и сопрограмм .............................. 146 Генераторы списков ............................................................ 148 Выражения-генераторы ....................................................... 150 Декларативное программирование ........................................ 151 Оператор lambda ................................................................. 152 Рекурсия ........................................................................... 153 Строки документирования ................................................... 154 Атрибуты функций ............................................................. 155 Функции eval(), exec() и compile() .......................................... 156 7. Классы и объектно-ориентированное программирование .... 158 Инструкция class ................................................................ 158 Экземпляры класса ............................................................. 159 Правила видимости ............................................................. 160 Наследование ..................................................................... 160 Полиморфизм, или динамическое связывание и динамическая типизация .................................................. 165 Статические методы и методы классов ................................... 165 Свойства ............................................................................ 167 Дескрипторы ...................................................................... 170 Инкапсуляция данных и частные атрибуты ............................ 171 Управление памятью объектов.............................................. 172 Представление объектов и связывание атрибутов .................... 176 __slots__ ........................................................................... 177 Перегрузка операторов ........................................................ 178 Типы и проверка принадлежности к классу ............................ 180 Абстрактные базовые классы ................................................ 182 Метаклассы ....................................................................... 184 8. Модули, пакеты и дистрибутивы ........................................ 189 Модули и инструкция import ................................................ 189 Импортирование отдельных имен из модулей ......................... 191 Выполнение модуля как самостоятельной программы .............. 193 Путь поиска модулей ........................................................... 194 Загрузка и компиляция модулей ........................................... 195 Выгрузка и повторная загрузка модулей ................................ 196 Пакеты .............................................................................. 197 Распространение программ и библиотек на языке Python ......... 200 Установка сторонних библиотек ........................................... 203 9. Ввод и вывод ..................................................................... 205 Чтение параметров командной строки ................................... 205 Переменные окружения ...................................................... 207 Файлы и объекты файлов ..................................................... 207 Стандартный ввод, вывод и вывод сообщений об ошибках......... 211 10 Оглавление Инструкция print ............................................................... 212 Функция print() .................................................................. 213 Интерполяция переменных при выводе текста ........................ 213 Вывод с помощью генераторов .............................................. 214 Обработка строк Юникода .................................................... 215 Ввод-вывод Юникода........................................................... 218 Сохранение объектов и модуль pickle ..................................... 223 10. Среда выполнения ........................................................... 226 Параметры интерпретатора и окружение ............................... 226 Интерактивные сеансы ........................................................ 229 Запуск приложений на языке Python ..................................... 230 Файлы с настройками местоположения библиотек .................. 231 Местоположение пользовательских пакетов ........................... 232 Включение будущих особенностей ........................................ 232 Завершение программы ....................................................... 234 11. Тестирование, отладка, профилирование и оптимизация .. 236 Строки документирования и модуль doctest ............................ 236 Модульное тестирование и модуль unittest ............................. 239 Отладчик Python и модуль pdb .............................................. 242 Профилирование программы ................................................ 247 Настройка и оптимизация .................................................... 248 II. Стандартная библиотека Python ........................................ 257 12. Встроенные функции ........................................................ 259 Встроенные функции и типы ................................................ 259 Встроенные исключения ...................................................... 273 Встроенные предупреждения................................................ 278 Модуль future_builtins ........................................................ 279 13. Службы Python времени выполнения ................................ 280 Модуль atexit ..................................................................... 280 Модуль copy ....................................................................... 280 Модуль gc .......................................................................... 281 Модуль inspect ................................................................... 283 Модуль marshal .................................................................. 288 Модуль pickle ..................................................................... 289 Модуль sys ......................................................................... 292 Модуль traceback ................................................................ 300 Модуль types ...................................................................... 301 Модуль warnings ................................................................. 303 Модуль weakref .................................................................. 305 Оглавление 11 14. Математика ..................................................................... 309 Модуль decimal ................................................................... 309 Модуль fractions ................................................................. 317 Модуль math ...................................................................... 319 Модуль numbers ................................................................. 321 Модуль random ................................................................... 322 15. Структуры данных, алгоритмы и упрощение программного кода .......................................... 326 Модуль abc ......................................................................... 326 Модуль array ...................................................................... 328 Модуль bisect ..................................................................... 331 Модуль collections ............................................................... 332 Модуль contextlib ............................................................... 339 Модуль functools ................................................................ 339 Модуль heapq ..................................................................... 341 Модуль itertools .................................................................. 342 Модуль operator .................................................................. 346 16. Работа с текстом и строками ............................................. 349 Модуль codecs .................................................................... 349 Модуль re .......................................................................... 354 Модуль string ..................................................................... 362 Модуль struct ..................................................................... 366 Модуль unicodedata ............................................................. 369 17. Доступ к базам данных ..................................................... 375 Прикладной интерфейс доступа к реляционным базам данных ... 375 Модуль sqlite3 .................................................................... 383 Модули доступа к базам данных типа DBM ............................. 391 Модуль shelve ..................................................................... 393 18. Работа с файлами и каталогами ........................................ 395 Модуль bz2 ........................................................................ 395 Модуль filecmp ................................................................... 396 Модуль fnmatch .................................................................. 398 Модуль glob ....................................................................... 399 Модуль gzip ....................................................................... 400 Модуль shutil ..................................................................... 400 Модуль tarfile .................................................................... 402 Модуль tempfile .................................................................. 407 Модуль zipfile .................................................................... 409 Модуль zlib ........................................................................ 413 19. Службы операционной системы ....................................... 415 Модуль commands ............................................................... 416 Модули ConfigParser и configparser ....................................... 416 12 Оглавление Модуль datetime ................................................................. 421 Модуль errno ...................................................................... 430 Модуль fcntl ....................................................................... 434 Модуль io ........................................................................... 437 Модуль logging ................................................................... 445 Модуль mmap .................................................................... 463 Модуль msvcrt .................................................................... 467 Модуль optparse ................................................................. 469 Модуль os .......................................................................... 475 Модуль os.path ................................................................... 496 Модуль signal ..................................................................... 499 Модуль subprocess ............................................................... 503 Модуль time ....................................................................... 507 Модуль winreg .................................................................... 511 20. Потоки и многозадачность ............................................... 516 Основные понятия .............................................................. 516 Параллельное программирование и Python ............................ 518 Модуль multiprocessing ....................................................... 519 Модуль threading ................................................................ 545 Модуль queue (Queue) .......................................................... 556 Сопрограммы и микропотоки ............................................... 559 21. Работа с сетью и сокеты .................................................... 561 Основы разработки сетевых приложений ............................... 561 Модуль asynchat ................................................................. 564 Модуль asyncore ................................................................. 568 Модуль select ..................................................................... 572 Модуль socket ..................................................................... 586 Модуль ssl.......................................................................... 608 Модуль SocketServer ........................................................... 611 22. Разработка интернет-приложений ................................... 619 Модуль ftplib ..................................................................... 619 Пакет http ......................................................................... 623 Модуль smtplib ................................................................... 639 Пакет urllib ........................................................................ 640 Пакет xmlrpc ...................................................................... 651 23. Веб-программирование ................................................... 660 Модуль cgi ......................................................................... 662 Модуль cgitb ...................................................................... 670 Поддержка WSGI ................................................................ 671 Пакет wsgiref ..................................................................... 673 Оглавление 13 24. Обработка и представление данных в Интернете .............. 677 Модуль base64 .................................................................... 677 Модуль binascii ................................................................... 680 Модуль csv ......................................................................... 681 Пакет email ........................................................................ 685 Модуль hashlib ................................................................... 694 Модуль hmac ...................................................................... 695 Модуль HTMLParser ........................................................... 696 Модуль json ....................................................................... 699 Модуль mimetypes .............................................................. 703 Модуль quopri .................................................................... 704 Пакет xml .......................................................................... 706 25. Различные библиотечные модули .................................... 725 Службы интерпретатора Python ............................................ 725 Обработка строк ................................................................. 726 Модули для доступа к службам операционной системы ............ 727 Сети .................................................................................. 727 Обработка и представление данных в Интернете ...................... 728 Интернационализация ........................................................ 728 Мультимедийные службы .................................................... 728 Различные модули .............................................................. 729 III. Расширение и встраивание ............................................... 731 26. Расширение и встраивание интерпретатора Python ........... 733 Модули расширений ........................................................... 734 Встраивание интерпретатора Python ..................................... 754 Модуль ctypes..................................................................... 759 Дополнительные возможности расширения и встраивания .................................................. 768 Jython и IronPython ............................................................ 769 Приложение A. Python 3 ........................................................ 770 Кто должен использовать Python 3? ...................................... 770 Новые возможности языка ................................................... 771 Типичные ошибки .............................................................. 780 Перенос программного кода и утилита 2to3 ............................ 788 Алфавитный указатель ......................................................... 794 Об авторе Дэвид М. Бизли (David M. Beazley) является давним приверженцем Python, примкнувшим к сообществу разработчиков этого языка еще в 1996 году. Наибольшую известность, пожалуй, он получил за свою работу над попу- лярным программным пакетом SWIG, позволяющим использовать про- граммы и библиотеки, написанные на C/C++, в других языках программи- рования, включая Python, Perl, Ruby, Tcl и Java. Он также является авто- ром множества других программных инструментов, включая PLY, реали- зацию инструментов lex 1 и yacc 2 на языке Python. В течение семи лет Дэвид работал в Отделении теоретической физики Лос-Аламосской Националь- ной лаборатории и возглавлял работы по интеграции Python с высокопро- изводительным программным обеспечением моделирования процессов для параллельных вычислительных систем. После этого он зарабатывал славу злого профессора, обожая озадачивать студентов сложными проектами в области программирования. Однако затем он понял, что это не совсем его дело, и теперь живет в Чикаго и работает как независимый программист, консультант, преподаватель по языку Python и иногда как джазовый му- зыкант. Связаться с ним можно по адресу http://www.dabeaz.com. 1 Генератор лексических анализаторов. – Прим. перев. 2 Генератор синтаксических анализаторов. – Прим. перев. О научном редакторе Ноа Гифт (Noah Gift) – соавтор книги «Python For UNIX and Linux System Administration» (издательство O’Reilly). 1 Он также принимал участие в ра- боте над книгой «Google App Engine In Action» (издательство Manning). Гифт является автором, лектором, консультантом и ведущим специали- стом. Пишет статьи для таких изданий, как «IBM developerWorks», «Red Hat Magazine», сотрудничает с издательствами O’Reilly и MacTech. Домаш- няя страница его консалтинговой компании находится по адресу http:// www.giftcs.com , а кроме того, значительное количество его статей можно найти по адресу http://noahgift.com. Помимо этого, вы можете стать после- дователем Ноа на сайте микроблогинга Twitter. Ноа получил степень магистра по специальности «Теория информацион- ных и вычислительных систем» в Калифорнийском университете, в городе Лос-Анджелес, степень бакалавра диетологии – в Калифорнийском госу- дарственном политехническом университете, в городе Сан Луис Обиспо. Имеет сертификаты системного администратора от компании Apple и LPI. Работал в таких компаниях, как Caltech, Disney Feature Animation, Sony Imageworks и Turner Studios. В настоящее время он работает в компании Weta Digital, в Новой Зеландии. В свободное время любит гулять со своей женой Леа и сыном Лиамом, играть на пианино, бегать на длинные дистан- ции и регулярно тренируется. 1 Н. Гифт, Дж. Джонс «Python в системном администрировании UNIX и Linux». – Пер. с англ. – СПб.: Символ-Плюс, 2009. Благодарности Э та книга не смогла бы увидеть свет без поддержки многих людей. Прежде всего, я хотел бы поблагодарить Ноа Гифта, который включился в проект и оказал существенную помощь в подготовке четвертого издания. Курт Грандис (Kurt Grandis) дал множество полезных комментариев ко мно- гим главам. Мне также хотелось бы поблагодарить бывших технических редакторов Тимоти Борончика (Timothy Boronczyk), Пола Дюбойса (Paul DuBois), Мэтса Викманна (Mats Wichmann), Дэвида Ашера (David Ascher) и Тима Белла (Tim Bell) за их ценные комментарии и советы, принесшие успех предыдущим изданиям. Гвидо ван Россум (Guido van Rossum), Дже- реми Хилтон (Jeremy Hylton), Фред Дрейк (Fred Drake), Роджер Масс (Roger Masse) и Барри Варшав (Barry Warsaw) оказали весьма существенную по- мощь в подготовке первого издания, пока гостили у меня несколько недель жарким летом 1999 года. Наконец, эта книга едва ли была бы возможна без отзывов, которые я получал от читателей. Их слишком много, чтобы я мог перечислить их поименно, тем не менее я приложил все усилия, чтобы учесть все поступившие предложения по улучшению книги. Я также хо- тел бы поблагодарить сотрудников издательств Addison-Wesley и Pearson Education за их непрекращающуюся помощь проекту. Марк Табер (Mark Taber), Майкл Торстон (Michael Thurston), Сет Керни (Seth Kerney) и Лайза Тибо (Lisa Thibault) сделали все возможное, чтобы обеспечить выход это- го издания. Отдельное спасибо Робину Дрейку (Robin Drake), невероятные усилия которого обеспечили появление третьего издания. Наконец, я хо- тел бы поблагодарить мою замечательную жену и друга Паулу Камен за ее поддержку, потрясающий юмор и любовь. Нам интересны ваши отзывы Вы, будучи читателями этой книги, являетесь наиболее важными крити- ками. Ваше мнение ценно для нас, и нам хотелось бы знать, что было сде- лано правильно, что можно было бы сделать лучше, книги на какие темы вы хотели бы увидеть и любые другие ваши пожелания. Вы можете отправлять свои сообщения по электронной почте или написать прямо мне о том, что вам не понравилось в этой книге и что мы могли бы сделать, чтобы сделать книгу еще лучше. Учтите, что я не в состоянии помочь вам в решении технических проб- лем, имеющих отношение к теме этой книги, и что из-за большого объема сообщений, поступающих мне по электронной почте, я не могу ответить на каждое из них. Не забудьте включить в текст своего письма название этой книги и имя автора, а также ваше имя, номер телефона или адрес электронной почты. Я внимательно ознакомлюсь со всеми вашими комментариями и поделюсь ими с автором и редакторами, работавшими над книгой. Эл. почта: feedback@developers-library.info Адрес: Mark Taber Associate Publisher Pearson Education 800 East 96th Street Indianapolis, IN 46240 USA Поддержка читателей Посетите наш веб-сайт и зарегистрируйте свою копию книги по адресу informit.com/register , чтобы получить доступ к последним дополнениям, загружаемым архивам с примерами и списку обнаруженных опечаток. Введение Э та книга задумывалась как краткий справочник по языку программиро- вания Python. Несмотря на то что опытный программист будет в состоя- Python. Несмотря на то что опытный программист будет в состоя- . Несмотря на то что опытный программист будет в состоя- нии изучить Python с помощью этой книги, тем не менее она не предна- Python с помощью этой книги, тем не менее она не предна- с помощью этой книги, тем не менее она не предна- значена для использования в качестве учебника по программированию. Основная ее цель состоит в том, чтобы максимально точно и кратко опи- сать ядро языка Python и наиболее важные части библиотеки Python. Эта книга предполагает, что читатель уже знаком с языком Python или имеет опыт программирования на таких языках, как C или Java. Кроме того, об- C или Java. Кроме того, об- или Java. Кроме того, об- Java. Кроме того, об- . Кроме того, об- щее знакомство с принципами системного программирования (например, с основными понятиями операционных систем и с разработкой сетевых приложений) может быть полезным для понимания описания некоторых частей библиотеки. Вы можете бесплатно загрузить Python на сайте http://www.python.org. Здесь вы найдете версии практически для всех операционных систем, включая UNIX, Windows и Macintosh. Кроме того, на веб-сайте Python вы найдете ссылки на документацию, практические руководства и разнообразные па- кеты программного обеспечения сторонних производителей. Появление данного издания книги «Python. Подробный справочник» со- Python. Подробный справочник» со- . Подробный справочник» со- впало с практически одновременным выходом версий Python 2.6 и Py- Python 2.6 и Py- 2.6 и Py- Py- thon 3.0. В версии Python 3 была нарушена обратная совместимость с пред- 3.0. В версии Python 3 была нарушена обратная совместимость с пред- Python 3 была нарушена обратная совместимость с пред- 3 была нарушена обратная совместимость с пред- шествующими версиями языка. Как автор и программист я столкнулся с дилеммой: просто перейти к версии Python 3.0 или продолжать опирать- Python 3.0 или продолжать опирать- 3.0 или продолжать опирать- ся на версии Python 2.x, более знакомые большинству программистов? Несколько лет тому назад, будучи программистом на языке C, я взял себе за правило воспринимать определенные книги как окончательное руко- водство по использованию особенностей языка программирования. На- пример, если вы используете какие-то особенности, не описанные в книге Кернигана и Ритчи, скорее всего, они будут непереносимы и их следует ис- пользовать с осторожностью. Этот подход сослужил мне неплохую службу как программисту, и именно его я решил использовать в данном издании «Подробного справочника». В частности, я предпочел опустить особенно- сти версии Python 2, которые были удалены из версии Python 3. Точно так же я не буду останавливаться на особенностях версии Python 3, которые нарушают обратную совместимость (впрочем, эти особенности я описал в отдельном приложении). На мой взгляд, в результате получилась книга, которая будет полезна программистам на языке Python независимо от ис- Python независимо от ис- независимо от ис- пользуемой ими версии. 20 Введение Четвертое издание книги «Python. Подробный справочник» также включа- ет важные дополнения по сравнению с первым изданием, вышедшим десять лет тому назад. 1 Развитие языка Python в течение последних лет в основном продолжалось в направлении добавления новых особенностей; особенно это относится к функциональному и метапрограммированию. В результа- те главы, посвященные функциональному и объектно-ориентированному программированию, были существенно расширены и теперь охватывают такие темы, как генераторы, итераторы, сопрограммы, декораторы и ме- таклассы. В главы, посвященные стандартной библиотеке Python, были добавлены описания наиболее современных модулей. Кроме того, во всей книге были обновлены исходные тексты примеров. Я полагаю, что боль- шинство программистов с радостью встретят дополненное описание. Наконец, следует отметить, что Python включает тысячи страниц доку- Python включает тысячи страниц доку- включает тысячи страниц доку- ментации. Содержимое этой книги в значительной степени основано на этой документации, однако здесь имеется множество важных отличий. Во- первых, информация в этом справочнике представлена в более компактной форме и содержит различные примеры и дополнительные описания мно- гих тем. Во-вторых, описание библиотеки языка Python было значительно расширено и включает дополнительный справочный материал. В особен- ности это относится к описаниям низкоуровневых системных и сетевых модулей, эффективное использование которых сопряжено с применением несметного количества параметров, перечисленных в руководствах и спра- вочниках. Помимо этого, с целью достижения большей краткости были опущены описания ряда устаревших и не рекомендуемых к использова- нию библиотечных модулей. Приступая к работе над этой книгой, главной моей целью было создание справочника, содержащего информацию практически обо всех аспектах использования языка Python и его огромной коллекции модулей. Несмот- ря на то что эту книгу нельзя назвать мягким введением в язык програм- мирования Python, я надеюсь, что она сможет послужить полезным до- Python, я надеюсь, что она сможет послужить полезным до- , я надеюсь, что она сможет послужить полезным до- полнением к другим книгам в течение нескольких лет. Я с благодарностью приму любые ваши комментарии. Дэвид Бизли (David Beazley) Чикаго, Иллинойс Июнь, 2009 1 Д. Бизли «Язык программирования Python. Справочник». – Пер. с англ. – Киев: ДиаСофт, 2000. – Прим. перев. Часть I . Язык программирования Python |