Главная » Просмотр файлов » Марк Лутц - Изучаем Python, Четвертое издание

Марк Лутц - Изучаем Python, Четвертое издание (1184811), страница 5

Файл №1184811 Марк Лутц - Изучаем Python, Четвертое издание (Марк Лутц - Изучаем Python, Четвертое издание) 5 страницаМарк Лутц - Изучаем Python, Четвертое издание (1184811) страница 52020-08-21СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 5)

Эта книга предназначена дляпрограммистов, использующих ����������������������������������������������Python����������������������������������������2, Python������������������������������������������������������������������3, а также для тех, кто пользуется обеими версиями, т. е.

с помощью этой книги вы сможете изучить любую из основных версий языка Python.Основное внимание уделяется версии 3.0, тем не менее по ходу повествованиябудут отмечаться отличия, существующие в версии 2.6, и инструменты длятех, кому приходится сопровождать старые программы. Синтаксис языка программирования почти не изменился, однако имеется несколько важных отличий, о которых я также буду рассказывать по ходу изложения материала.Например, в большинстве примеров используется вызов функции print в стилеверсии 3.0, но при этом будет описываться использование инструкции print,присутствующей в версии 2.6, чтобы вы могли понимать программный код,написанный ранее. Кроме того, я представлю новые особенности языка, такиекак инструкция nonlocal, появившаяся в версии 3.0, и метод форматирования19Предисловиестрок format в версиях 2.6 и 3.0, а также укажу, какие расширения отсутствуют в более старых версиях Python.Если вы только приступаете к изучению языка Python������������������������������������������������������и не стоите перед необходимостью использовать устаревший программный код, я рекомендую начинать сразу с версии Python�������������������������������������������������������������������������������������������������������� 3.0; в этой версии были устранены многие давнишние недостатки языка, при этом было сохранено все самое лучшее и добавленынекоторые новые возможности.К тому времени, когда вы будете читать эти строки, многие популярные биб­лиотеки и инструменты наверняка станут доступны и в версии Python 3.0,особенно если учесть улучшение производительности операций ввода-вывода,которое заявлено в ожидающейся версии 3.1.

Если вы используете программы, основанные на версии Python 2.X, вы обнаружите, что эта книга отвечаетвашим потребностям в настоящее время, а в дальнейшем поможет вам выполнить переход на версию 3.0.По большей части это издание книги может использоваться для изучения языка Python при использовании разных выпусков версий Python 2 и 3, однаконекоторые устаревшие версии интерпретатора из ветки 2.X могут оказаться нев состоянии выполнить программный код всех примеров, которые приводятсяздесь. Например, декораторы классов могут использоваться в обеих версияхPython�������������������������������������������������������������������� 2.6 и 3.0, но вы не сможете применять их в более старых версиях ���Python�������������������������������������������������������������������������� 2.�����������������������������������������������������������������������X����������������������������������������������������������������������, где эта особенность языка отсутствует.

Ниже, в табл. П.1 и П.2, приводятся основные отличия между версиями 2.6 и 3.0.Незадолго до передачи книги в печать она была дополнена примечаниями о наиболее существенных расширениях языка, по­явившихся в версии Python 3.1: использование запятых в качестве разделителей и автоматическая нумерация полей в вызовахстрокового метода format, синтаксис множественных менеджеров контекста в инструкциях with, новые методы чисел и так далее. Основная цель версии Python 3.1 – оптимизация скоростивыполнения, поэтому данная книга также охватывает и эту новую версию.

Фактически версия Python 3.1 выпускается как замена версии 3.0. Кроме того, последняя версия Python обычновсегда самая лучшая. Поэтому в этой книге термин «Python 3.0»практически везде используется для обозначения не конкретнойверсии, а изменений в языке, введенных в версии Python 3.0и присутствующих во всех версиях ветки 3.X.Новые главыОсновная цель этого издания – обновить примеры и сведения, приводившиеся в предыдущем издании и касающиеся версий Python 3.0 и 2.6. Кроме того,я добавил пять новых глав, описывающих новые особенности:•• Глава 27 – новое руководство по классам, где приведен более реалистичныйпример, демонстрирующий основы объектно-ориентированного программирования (ООП) на языке Python.•• Глава 36 подробно рассказывает о строках Юникода и строках байтов,а также описывает отличия строк и файлов в версиях 3.0 и 2.6.20Предисловие•• Глава 37 описывает средства управления атрибутами, такие как свойства,и содержит новые сведения о дескрипторах.•• Глава 38 представляет декораторы функций и классов и содержит подробные и исчерпывающие примеры.•• Глава 39 охватывает метаклассы и сравнивает их с декораторами.Первая из этих глав представляет собой подробное пошаговое руководство поиспользованию классов и приемов ООП в языке ����������������������������Python����������������������.

Она основана на примерах, используемых на учебных курсах и адаптированных для книги. Этаглава призвана продемонстрировать применение ООП в более приближенномк реальности контексте, чем в предыдущих изданиях, и показать, как можетиспользоваться концепция классов для построения крупных программ. Я надеюсь, что эти примеры будут полезны настолько же, насколько они полезнына учебных курсах.Последние четыре главы в этом списке составляют заключительную частькниги «Расширенные возможности». С технической точки зрения эти темы относятся к основам языка программирования, тем не менее многие программисты используют простые строки символов ASCII и не нуждаются в детальномизучении строк Юникода и строк с двоичными данными.

Точно так же декораторы и метаклассы являются узкоспециализированными темами, представляющими интерес скорее для разработчиков программных интерфейсов, чемдля прикладных программистов. Поэтому эти четыре главы были выделеныв отдельную часть и не являются обязательными для чтения.Если же вы используете эти возможности или сопровождаете программы, в которых они применяются, эти новые главы должны помочь вам освоить их.

Кроме того, примеры в этих главах соединяют разнообразные базовые концепцииязыка и имеют большое практическое значение. В конце каждой главы имеются контрольные вопросы, но отсутствуют упражнения, так как эта часть неявляется обязательной для прочтения.Изменения в существующем материалеПомимо всего прочего была проведена реорганизация материала предыдущего издания, добавлены новые примеры. Так, в главе 30 в описание механизмамножественного наследования был включен новый пример вывода деревьевклассов; в главу 20 были добавлены новые примеры использования генераторов для реализации собственных версий функций map и zip; в главу 31 быливключены новые примеры, иллюстрирующие статические методы и методыклассов; в главе 23 демонстрируется операция импортирования относительнопакета, а в главу 29 были добавлены примеры, иллюстрирующие методы __contains__, __bool__ и __index__ перегрузки операторов и использование новогопротокола перегрузки для операций извлечения среза и сравнения.Дополнительно была проведена реорганизация материала с целью добиться более последовательного изложения.

Например, чтобы добавить новые сведенияи избежать перегруженности, каждая из пяти вышеупомянутых глав быларазбита на две главы. В результате появились новые самостоятельные главы,посвященные перегрузке операторов, областям видимости и аргументам, особенностям обработки исключений, а также генераторам и итераторам. Былнемного изменен порядок следования существующих глав, чтобы обеспечитьболее последовательное освещение тем.21ПредисловиеВ этом издании также была предпринята попытка ликвидировать ссылки набудущие темы за счет переупорядочения глав, однако в некоторых случаях этооказалось невозможным из-за изменений в �������������������������������Python������������������������� 3.0: для полного понимания особенностей вывода строк и метода format вам потребуется знакомствос именованными аргументами функций; чтобы понять, как получить списокключей словаря и как проверить наличие того или иного ключа, необходимознакомство с итераторами; чтобы научиться использовать функцию exec длявыполнения программного кода, необходимо уметь применять объекты файлов, и так далее.

Читать книгу по-прежнему предпочтительнее по порядку, однако иногда может потребоваться забежать вперед.В общей сложности в этом издании было выполнено несколько сотен изменений. Одни только таблицы в следующем разделе описывают 27 дополненийи 57 изменений в языке Python. Справедливости ради следует отметить, чтоэто издание стало более продвинутым, потому что сам язык Python стал болеепродвинутым.Расширения языка, появившиесяв версиях 2.6 и 3.0Вообще говоря, Python версии 3.0 стал более цельным, но он также стал в некотором роде и более сложным. На первый взгляд некоторые из измененийпредполагают, что для изучения языка Python вы уже должны быть знакомыс ним! В предыдущем разделе уже были упомянуты некоторые темы, которыесвязаны круговой зависимостью в версии 3.0, например объяснение темы представлений словарей практически невозможно без наличия предварительныхзнаний. Помимо обучения основам языка ���������������������������������Python���������������������������эта книга послужит подспорьем в заполнении подобных пробелов в ваших представлениях.В табл. П.1 перечислены наиболее заметные новые особенности языка и номераглав, в которых они описываются.Таблица П.1.

Нововведения в версиях Python 2.6 и 3.0НововведениеСм. главыФункция print в версии 3.011Инструкция nonlocal в версии 3.017Метод str.format в версиях 2.6 и 3.07Строковые типы в версии 3.0: str – для представления строкЮникода, bytes – для представления двоичных данных7, 36Отличия между текстовыми и двоичными файлами в версии 3.09, 36Декораторы классов в версиях 2.6 и 3.0: @private(‘age’)31, 38Новые итераторы в версии 3.0: range, map, zip14, 20Представления словарей в версии 3.0: D.keys, D.values, D.items8, 14Операторы деления в версии 3.0: остаток, / и //522ПредисловиеТаблица П.1 (продолжение)НововведениеСм. главыЛитералы множеств в версии 3.0: {a, b, c}5Генераторы множеств в версии 3.0: {x**2 for x in seq}4, 5, 14, 20Генераторы словарей в версии 3.0: {x: x**2 for x in seq}4, 5, 14, 20Поддержка представления двоичных чисел в виде строк в версиях 2.6 и 3.0: 0b0101, bin(I)5Тип представления рациональных чисел в версиях 2.6 и 3.0:Fraction(1, 3)5Аннотации функций в версии 3.0: def f(a:99, b:str)->int19Аргументы, которые могут быть только именованными в версии 3.0: def f(a, *b, c, **d)18, 20Расширенная операция распаковывания последовательностейв версии 3.0: a, *b = seq11, 13Синтаксис импортирования относительно пакета в версии 3.0:from .23Менеджеры контекста в версиях 2.6 и 3.0: with/as33, 35Синтаксис исключений в версии 3.0: raise, except/as, суперклассы33, 34Объединение исключений в цепочки в версии 3.0:raise e2 from e133Изменения в наборе зарезервированных слов в версиях 2.6и 3.011Переход на использование классов «нового стиля» в версии 3.0 31Декораторы свойств в версиях 2.6 и 3.0: @property37Дескрипторы в версиях 2.6 и 3.031, 38Метаклассы в версиях 2.6 и 3.031, 39Поддержка абстрактных базовых классов в версиях 2.6 и 3.028Особенности языка, удаленные в версии 3.0Помимо дополнений в версии 3.0 некоторые особенности языка были удаленыс целью сделать его синтаксис более стройным.

Характеристики

Тип файла
PDF-файл
Размер
12,21 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6274
Авторов
на СтудИзбе
316
Средний доход
с одного платного файла
Обучение Подробнее