Марк Лутц - Изучаем Python, Четвертое издание (1184811), страница 7
Текст из файла (страница 7)
Кроме того, здесь приводится расширенное описание некоторых новыхособенностей, впервые появившихся во втором издании, в том числе третье измерение при работе со срезами и возможность передачи функциям произвольного числа аргументов, включая функцию apply.Изменения в обучении языку Python (для 3-го издания)Кроме уже перечисленных изменений в самом языке, третье издание дополнено новыми темами и примерами, наработанными мною при преподавании накурсах обучения языку Python в последние годы.
Например, здесь вы найдете(нумерация глав была изменена с целью соответствовать четвертому изданию):•• Новую главу о встроенных типах (глава 4)•• Новую главу о синтаксических конструкциях (глава 10)•• Полностью новую главу о динамической типизации с углубленным освещением этого вопроса (глава 6)•• Расширенное введение в ООП (глава 25)•• Новые примеры работы с файлами, областями видимости, вложенными инструкциями, классами, исключениями и так далееПредисловие27Множество изменений и дополнений было сделано, чтобы облегчить чтениекниги начинающим программистам; в результате обсуждение некоторых тембыло перемещено в более соответствующие для этого места с учетом опыта преподавания ���������������������������������������������������������������Python���������������������������������������������������������на курсах. Например, описание генераторов списков и итераторов теперь приводится вместе с описанием оператора цикла for, а не с описанием функциональных инструментов, как это было ранее.Кроме того, в третьем издании было расширено описание основ языка, добавлены новые темы и примеры.
Поскольку эта книга фактически превратиласьв стандартный учебник по языку Python, изложение материала стало болееполным и расширено новыми примерами его использования.Был полностью обновлен комплект советов и рекомендаций, подобранных изопыта преподавания в течение 10 лет и практического использования Pythonв течение 15 лет. Также были дополнены и расширены учебные упражненияс целью отразить наиболее удачные современные приемы программированияна языке ����������������������������������������������������������������Python����������������������������������������������������������, его новые особенности и показать наиболее типичные ошибки, которые совершают начинающие программисты на моих курсах.
Вообще,основы языка в этом издании обсуждаются более широко, чем в предыдущихизданиях.Структурные изменения в 3-м изданииЧтобы облегчить усвоение основ языка, весь материал поделен на несколькочастей, каждая из которых содержит несколько глав. Например, типы и инструкции теперь описываются в двух разных частях, в каждой из которыхосновным типам и инструкциям отведены отдельные главы. При переработкематериала упражнения и описания наиболее распространенных ошибок былиперемещены из конца каждой главы в конец части.Каждая глава завершается кратким обзором и контрольными вопросами, которые помогут проверить, насколько хорошо понят изложенный материал.В отличие от упражнений в конце каждой части, решения для которых приводятся в приложении �����������������������������������������������������B����������������������������������������������������, ответы на вопросы в конце каждой главы следуют непосредственно за вопросами.
Я рекомендую просматривать ответы, даже есливы уверены, что правильно ответили, потому что эти ответы, кроме прочего,являются кратким обзором только что пройденной темы.Несмотря на наличие новых тем, эта книга по-прежнему ориентирована на тех,кто только начинает знакомство с языком Python. Поскольку третье изданиев значительной степени основано на проверенном временем опыте преподавания, оно, как и первые два, может служить вводным курсом для самостоятельного изучения языка Python.Ограничение области применения книгиТретье издание представляет собой учебник по основам языка программирования Python������������������������������������������������������������������������������������������������������������������������������������и ничего больше. Здесь приводятся всесторонние сведения о языке, которые необходимо знать, прежде чем приступать к практическому егоиспользованию. Материал подается в порядке постепенного усложнения и даетполное представление о языке программирования, не фокусируясь на областяхего применения.Для некоторых «изучить Python» означает потратить час-другой на изучениеруководств в Интернете.
Такой подход пригоден для опытных программи-28Предисловиестов – в конце концов, Python – довольно простой язык по сравнению с другимиязыками программирования. Однако проблема такого ускоренного изучениясостоит в том, что на практике программисты часто сталкиваются с необычными случаями необъяснимого изменения значений переменных, параметровпо умолчанию и так далее. Цель этой книги – дать твердое понимание основязыка Python, чтобы даже самые необычные случаи находили свое объяснениеи чтобы вы смогли применять его для решения прикладных задач независимоот предметной области, в которой работаете.Это ограничение было введено намеренно.
Ограничившись обсуждением основязыка, мы можем заняться более глубоким и полным их исследованием. Обсуждение темы прикладного использования Python и справочные материалы,не вошедшие в эту книгу, вы найдете в других публикациях, которые начинаются с того места, где заканчивается эта книга.О книге «Изучаем Python»В этом разделе приводятся некоторые наиболее важные замечания об этойкниге независимо от номера издания.
Никакая книга не способна удовлетворить все нужды и потребности читателя, поэтому важно понимать основныецели книги.Предварительные условияВ действительности книга не предъявляет никаких предварительных условий. Она с успехом использовалась как начинающими программистами, таки умудренными опытом ветеранами.
Если у вас есть желание изучать Python,эта книга наверняка вам поможет. Наличие у читателя некоторого опытав программировании не является обязательным, но будет совсем не лишним.Эта книга задумывалась как введение в Python для программистов.1 Возможно, она не идеальна для тех, кто раньше никогда не имел дела с компьютерами(например, мы не будем объяснять, что такое компьютер), но я не делал никаких предположений о наличии у читателя опыта программирования или обуровне его подготовки.С другой стороны, я не считаю нужным обижать читателей, предполагая, чтоони «чайники», что бы это ни означало, – писать полезные программы на языкеPython просто, и эта книга покажет, как это делается.
В книге Python иногдапротивопоставляется другим языкам программирования, таким как C, C++,Java и Pascal, но эти сравнения можно просто игнорировать, если ранее вам неприходилось работать с этими языками.Сравнение с другими книгамиЭта книга охватывает все основные аспекты языка программирования Python,но при этом я старался ограничить круг обсуждаемых тем, чтобы уменьшить1Под «программистами» я подразумеваю всех, кто написал хотя бы одну строчку кодана любом языке программирования. Если вы не входите в эту категорию, вы все равно сможете извлечь пользу из этой книги, но имейте в виду, что основное вниманиев ней уделяется не основным принципам программирования, а изучению основ языка программирования Python.Предисловие29объем книги. Для сохранения простоты в ней рассматриваются самые основные понятия, используются небольшие и очевидные примеры и опущены некоторые незначительные детали, которые вы найдете в справочных руководствах.
По этой причине данная книга должна рассматриваться как введение,как первый шаг к другим, более специализированным и более полным книгам.Например, мы не будем говорить об интеграции Python/C; это слишком сложная тема, которая, однако, является центральной для многих систем, основанных на применении Python. Мы также не будем говорить об истории развитияPython и о процессе его разработки. А таких популярных применений Python,как создание графического интерфейса, разработка системных инструментови работа с сетью, мы коснемся лишь очень кратко, если они вообще будут упоминаться. Естественно, при таком подходе из поля зрения выпадает значительная часть общей картины.Вообще говоря, Python стоит на более высоком качественном уровне относительно других языков сценариев.
Некоторые из его идей требуют более глубокого изучения, чем может вместить эта книга, поэтому я надеюсь, что большинство читателей продолжит изучение принципов разработки приложенийна этом языке, обратившись к другим источникам информации.Например, книга «Программирование на Python»1 (O’Reilly), содержащая более объемные и полные примеры наряду с описанием приемов прикладногопрограммирования, задумывалась как продолжение книги «Изучаем Python».Эти две книги представляют собой две части курса обучения, который преподает автор, – основы языка и прикладное программирование. Кроме того, в качестве справочника можно использовать «Pyton Pocket Reference» (O’Reilly),где приводятся некоторые подробности, опущенные здесь.Для дальнейшего изучения можно порекомендовать книги, содержащие дополнительные сведения, примеры или особенности использования языка Pythonв определенных прикладных областях, таких как веб-приложения и созданиеграфических интерфейсов. Например, книги «Python in a Nutshell» (O’Relly)и «Python Essential Reference»2 (Sams) содержат справочную информацию.Книга «Python Cookbook» (O’Reilly) представляет собой сборник решений длятех, кто уже знаком с приемами прикладного программирования.