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

Лутц М. - Изучаем Python (1077325), страница 26

Файл №1077325 Лутц М. - Изучаем Python (Лутц М. - Изучаем Python) 26 страницаЛутц М. - Изучаем Python (1077325) страница 262018-01-10СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

Методы, специфичные для типа Все строковые операции, которые мы до сих пор рассматривали, в действительности являются операциями над последовательностями, то есть эти операции могут использоваться для работы с любыми последовательностями языка Ру[Ьоп, включая списки и кортежи. Однако, помимо операций, универсальных для последовательностей, строки также имеют свои собственные операции, выполненные в виде менсодов (функции, присоединенные к объекту, которые запускаются выражением вызова). Например, метод строк Еспб выполняет поиск подстроки в строке (он возвращает смещение переданной ему подстроки или -1, если поиск не увенчался успехом), а метод гер[асе производит глобальный поиск с заменой: Згб № Поиск сиещенил подстроки № Замена одной подстроки другой И снова, независимо от имен этих строковых методов, мы не изменяем, применяя методы, оригинальную строку, а создаем новую, т. к.

строки являются неизменяемыми, и это следует учитывать. Строковые методы — это первый уровень в комплекте инструментальных средств обработки текста языка РуЬ)топ. Другие методы позволяют разбивать строки на подстроки по определенному символу-разделителю (достаточно удобно для простых случаев разбора строк), преобразовывать регистр символов„проверять тип содержимого строк (цифры, алфавитные символы и т. д.) и отсекать пробельные символы с обоих концов строк. »> 11пе = 'ааа,ЬЬЬ,ссссо,еб' »> 11пе.ер111(',') № Разбиеает строку по разделителю и создает список строк ['ааа', 'ЬЬЬ', 'ссссс'. 'ОО'] »> 3 = 'ерша' »> Б.оррег() БРАМ' № Преобразование сииеолое е ееркний и е нижний регистр »> 8.

1аа1рьа() № проверка содержииого: зза1рпа, тзяртг и т. д Тгое »> 11пе = 'ааа, ЬЬЬ,ссссо, бета' »> 11пе = 11пе.гз1г1р() № удепиет завершающие пробельние сииеоль »> 11пе 'ааа,ЬЬЬ,ссссо,бс' Следует заметить, что в отличие от универсальных операций, применяемых к последовательностям, строковые методы могут применяться только к строкам и ни к каким другим объектам. Следует понимать, что инструментальные средства языка Ру()топ делятея на несколько уровней: универсальные операции, которые могут применяться к нескольким типам, реализованы в виде встроенных функций и выражений (например, 1еп(Х), Х[0]), а операции, специфичные для определенного типа, реализованы в виде методов (например, аБТ г1пд, оррег( )). Выбор требуемых инструментов из всех этих категорий станет более простым по мере изучения языка Ру()топ, а в следующем разделе приводится несколько рекомендаций, которые вы сможете использовать уже сейчас.

Получение помощи Методы, представленные в предыдущем разделе, являются лишь небольшой частью того, что доступно при работе со строковыми объекта- »> 3.№1пс('ра') 1 »> 3 'Брав' »> 8, гер1асе( ' ра ', 'Хтш ) 'БХТЕа' »> 8 'Брав' Глава 4. Введение е типы объектов языка Ру()топ Строки ми. Вообще эта книга не является исчерпывающим источником информации о методах объектов.

Чтобы получить дополнительную информацию, вы всегда можете воспользоваться функцией б1г, которая возвращает список всех доступных атрибутов заданного объекта. Поскольку методы являются атрибутами-функциями, они также присутствуют в списке: »> б1г(В) абб ', ' с1авв ', ' солта!па ', ' бе1аттг ', ' бос ', ' ец де '. ' де!а!!мосте ', ' дет!Ьеш ', ' детпешагдв ', ' детв1тсе от ', ' паап ', ' ш11 ', 1е ', ' 1еп ', ' 1! ', ' шоб шо1 ', ' пе ', ' пеш ', ' гебцсе ', ' гебосе ех ', ' герг гшоб ', ' гшц1 ', ' вета!тг ', ' втг ', 'сар!та1!ве', 'септег', 'сацп!', 'бесобе', 'епсобе', 'епбвштти', 'ехрапбтасв', 'т!пб', '1пбех', ' 1ва1пош ', ' 1ва1рпа ', ' 1вбтд11 ', ' тв1оиег ', цвврасе , !в!1!1е ', ' твцррег ', ')атп', '1)ов!', '1ошег', '1втг!р', 'рагс!т!Ьп', 'гер1асе', 'г(1пб', 'г1пбех', 'г)цвт', 'гсвг!!!!Ьп', 'гвр111', 'гвтг!р', вр111, вр!тт1тпев', 'втагтвш!тп', 'втг1р', 'вшарсаве', '1111е', 'тгапв1ате', 'оррег', 'аг>11'] Скорее всего, вам не понадобятся имена из этого списка, содержащие символы подчеркивания, до того момента, пока мы не приступим к изучению возможности перегрузки операторов в классах, — они представляют собой реализацию строкового объекта и доступны для поддержки настроек.

Вообще ведущие и завершающие символы подчеркивания используются для обозначения механизмов внутренней реализации. Имена без символов подчеркивания в этом списке обозначают методы строковых объектов. Функция б! г возвращает лишь имена методов. Чтобы узнать назначение того или иного метода, можно передать его имя функции Ье1р: »> Ье1р(В.!пбех) не1р оп ьо111-1п гцпст1оп 1пбех: (Справка о встроенной функции !пбех:) гпг)ех(.,.) В.тпбех(вць [.втаг! [,епб]]) -> тпт (тхе В.т!пб() Ьо! гатве На1оеЕггог шоеп тле вцЬв!г>пд тв пот Гоцпб.

(Сходна с функцией В.ттпб(), но вшвывает ошибку На1оеЕггог, если подстрока не найдена) Функция Ье1р — один из немногих интерфейсов к системе программного кода Ру!)гоп, который поставляется в составе интерпретатора под названием РуРос — инструмент, который позволяет извлекать описание из объектов. Далее в этой же книге вы узнаете, что Ру[)ос позволяет отображать информацию в формате НТМЬ.

Можно запросить информацию и для самого строкового объекта [например, Ье1р(8)), но в этом случае вы можете получить больше информации, чем хотелось бы, — описание всех строковых методов. Часто бывает удобнее запрашивать информацию о конкретном методе, как это было продемонстрировано выше. иг Глава 4. Введение з типы объектов языка Ру(Ьоп За дополнительной информацией всегда можно обратиться к справоч- ному руководству по стандартной библиотеке или к печатным спра- вочным изданиям, но функции б! г и Ье1р в языке РуФ)зоп представляют собой самое первое средство получения доступа к документации.

Другие способы представления строк К этому моменту мы познакомились с операциями над последовательностями и методами, специфичными для строк. Однако, кроме этого, язык программирования РуФ)поп предоставляет несколько различных способов представления строк в программном коде, которые мы будем исследовать позднее (включая служебные символы, которые представлены, например, в виде последовательностей, начинающихся с символа обратного слеша): »> 8 = 'Акпвктс' № )л - это сиивол "конец строки', (т - сиивол табуляции »> 1ап(8) № Квмдвя из этик лэр соответствует единственному сииволу 5 »> огб( кп ) 10 № В АВСП (л — это байт с числовым значением 70 »> 8 'АкОВ>ОС' № )О - зто двоичный ноль, не является зэвервителем строки »> 1вп(8) 5 »> аав ааааааааааааа ЬЬЬ'''ЬЬЬЬЬЬЬЬЬЬ""ЬЬЬЬЬЬЬ'ЬЬЬЬ оооооооооооооо""" »> ааз ''кпааааааааааааак,пЬЬЬ>'>,'~'ЬЬЬЬЬЬЬЬЬЬ""ЬЬЬЬЬЬЬ'к'ЬЬЬЬ'кпсссссссссссссс' Кроме того, РуФ)топ предоставляет поддержку»неформатированных» строковых литералов, в которых символ обратного спеша интерпретируется как обычный символ (они начинаются с символа г), а также поддержку строк с символами Юникода, обеспечивающих интернационализацию (такие строки начинаются с символа и и состоят из многобайтовых символов).

С технической точки зрения строка с символами Юникода представляет собой иной тип данных, отличный от обычной строки, но он поддерживает те же самые строковые опера- Язык Ру$)зоп допускает заключать строки в кавычки или в апострофы (они означают одно и то же). Кроме того, имеется специальная форма определения многострочных строковых литералов — тройные кавычки или апострофы. Когда используется такая форма, все строки в программном коде объединяются в одну строку, а там, где в исходном тексте выполняется переход на новую строку, вставляется символ» конец строки».

Это незначительное синтаксическое удобство весьма полезно для оформления в сценариях на языке Ру1)зоп крупных блоков текста, таких как разметка НТМЬ или ХМЬ: Списки ции. В последующих главах мы встретимся с этими специальными формами строк. Поиск по шаблону Прежде чем двинутьея дальше, хочетея заметить„что ни один из строковых объектов не поддерживает возможность обработки текста на основе шаблонов. Рассмотрение инструментов, выполняющих поиск текста по шаблону, выходит за рамки этой книги, но для читателей, знакомых с другими языками сценариев, будет интересно узнать, как выполняется поиск по шаблону в языке РуЬпоп — для этого необходимо импортировать модуль с именем ге. Этот модуль содержит аналогичные функции для выполнения поиска, разбиения и замены, но за счет использования шаблонов мы можем использовать более общие варианты решения задач: »> 1врогг ге »> васса = ге.васса('не11о( ~11 ° (.*)вог1с', 'не11о Русьоп вог1о') »> васса.ргоор(1) 'Руссоп В этом примере выполняется поиск строки, начинающейся со слова »Не11о», вслед за которым следуют ноль или более символов табуляции или пробелов, за которыми могут следовать произвольные символы, которые будут сохранены, как группа совпадения, и завершающаяся словом вугог1б».

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

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

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

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