LINUX.ORG.RU

Текстовая обработка в языке Python


0

0

Эта статья суммирует возможности текстовой обработки языка Python для тех программистов, которые являются новичками в программировании на языке Python. Эта статья объясняет некоторые основные понятия регулярных выражений и предлагает советы, когда стоит (а когда - не стоит) использовать регулярные выражения при обработке текста.

>>> Подробности

> Mодуль re делает устаревшими модули regex и regsub, которые использовались в старых кодах на языке Python. <...> Устаревшие модули скорее всего будут исключены из новых версий Python, и в 1.6, возможно, будет включен усовершенствованный модуль re.

1.6, гагага! Это, господа, просто археологический кружок какой-то!

ero-sennin ★★
()
Ответ на: комментарий от ero-sennin

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

krum
()

Статью прочёл.

1. Как уже было замечено, оригинал написан достаточно давно.

2. Слишком сильно бросается в глаза переводное происхождение статьи: отдельные предложения на русском можно было бы изящнее сформулировать.

3. Не нашёл там ни слова о том, когда и почему НЕ НУЖНО использовать регулярные выражения.

floppy_formator
()

статья неважная, будет полезна тем, кто питона вообще в глаза не видел, для общего развития.

но IBM все равно респект :)

Damwihu
()

LOR как всегда в своем репуртуаре..

OlegSL
()

"Charming Python" = "Очаровательный Python" - БОЖЕ! Этпесдетс! Расстреляйте айбиэмовских перевоччеков!

И снесите наконец эту позорную "новость".

yk4ever
()

Charming Python. Они бы это перевели бы как очаровательный удав(ф). ничазотт за статью. в биореактор.

AiFiLTr0 ★★★★★
()
Ответ на: комментарий от ero-sennin

> 1.6, гагага! Это, господа, просто археологический кружок какой-то!

Весь Tutorial на python.org - некроархеологическая экспедиция. Вот выдержка оттуда: 2.1.2 Interactive Mode

When commands are read from a tty, ....... (куча банальностей)

python Python 1.5.2b2 (#1, Feb 28 1999, 00:02:06) [GCC 2.8.1] on sunos5 Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam >>>

А эти отступы :-) LOL. Все нормальные IDE могут это делать автоматически. Но делать отступы элементом языка - извращение.

anonymous
()

Мля.... Ну нафиг питон для обработки текста? Для етого есть специально предназначенные языки: Perl и awk. Нельзя же суп вилкой есть.

anonymous
()
Ответ на: комментарий от anonymous

Ну суп китайцы умудряются двумя палочками есть.

krum
()
Ответ на: комментарий от anonymous

> Весь Tutorial на python.org - некроархеологическая экспедиция. Вот выдержка оттуда: 2.1.2 Interactive Mode

Туториалы на http://python.org постоянно обновляются в соответствии с изменениями в языке. Внешний вид интерактивной оболочки с версии 1.5 не изменился. А вот блин операции со строками с версии 1.5 ещё как изменились. И давным-давно принято использовать методы строковых объектов, а не модуль string, как это предлагает сабжевая статья. Которую я, по-моему, читал ещё много-много лет назад. Значит, IBM_dW кормит нас несвежими боянами => печ

ero-sennin ★★
()
Ответ на: комментарий от ero-sennin

> Туториалы на http://python.org постоянно обновляются в соответствии с изменениями в языке.

+1. если уж выкладывать статьи, то хоть более-менее приближенные к т.н. "реальности", а не описывающие методы поднятия из могилы ужедавноразложившегося трупа.

isden ★★★★★
()
Ответ на: комментарий от ero-sennin

>> А эти отступы :-) LOL.

> Дядя, топиком ошибся. За отступы на этой неделе обсуждают в ветке про Питон-3000. :) http://www.linux.org.ru/jump-message.jsp?msgid=1989078

Простите, Тётя, но просто, когда я попытался почитать туториал лет этак 5-6 назад и встретил серьезные и глубокомысленные размышления об отступах мне это почему то напомнило уродские Makefile-ы с их табами и питон для меня закончился во взрыве весёлого и здорового смеха.

А удобней перла для обработки текста еще не придумали. Продолжайте есть суп китайскими полочками.

anonymous
()
Ответ на: комментарий от krum

> На вкус и цвет, как говорится. Для меня лучше уж отступы, чем $@~ и прочий синтаксический мусор.

Jeder ist sein( Каждому своё ) - прямо как на воротах концлагя.

anonymous
()
Ответ на: комментарий от anonymous

посмотрим как ты будешь разгребать собственный исходник на перле полугодовалой давности.... я уж не говорю о чужих.... или велосипеды - наше всё?

DemonZLa
()
Ответ на: комментарий от krum

> Для меня лучше уж отступы, чем $@~ и прочий синтаксический мусор.

+1, больше сказать нечего. Перл на помойку истории!

Joe_Bishop
()

помнится когда-то начинал изучать Питон по этой статье. Так что это даже не боян, а черт знает что. Новость, как я понимаю, что вышел _руссий_преревод_ этой статьи.

qWen71n ★★★
()

Всем, кому охота пофлеймить на тему отступов в питоне, добро пожаловать в топик про Perl6 и Parrot. Там уже эти многострадальные отступы обсосали просто до костей. Видимо больше придраться не к чему, вот перловые фанатики и нашли себе отдушину.

anonymous
()

А я тут почитал каменты и решил по сцилке не ходить... поверил всем наслово :)

PS

Мне почеуто всё больше и больше нравится ECMAScript, наверно это связано с практикой использованя Python.

SV0L0CH
()
Ответ на: комментарий от SV0L0CH

Сколько не приглядывался к питончику, и быстр и распиарен, но имел удовольствие написать первое приложение на ruby (командная строка + файловая система + база через dbi) и вопрос по консольным утилитам, для меня лично, снят однозначно. Кое-чего не хватает пока из полноценного С++ ООП, но это не беда. Интересно будет groovy посмотреть - в чём его сила/особенность?

C вебом конечно дело сложнее обстоит. Баланс коммерции/скорости/безопасности. К сожалению, на хостинге за пыхом остальных и не видать.

Питона любит гуголь, но кто-нибудь знает на чём написан гмыл?

ldvr
()

Хотел начать изучать питон, но сегодня узнал, что он не поддерживает инкапсуляцию. Расстроился

anonymous
()
Ответ на: комментарий от anonymous

> Хотел начать изучать питон, но сегодня узнал, что он не поддерживает инкапсуляцию

инкапсуляция суть скрытие деталей реализации. Можно понимать двояко: реализация есть, и тебе незачем писать очередной велосипед; фанатично закрыты все переменные класса, и для получения некоторых значений нужно писать функции. Инкапсуляция в первом смысле есть. А инкапсуляция во втором смысле, я считаю, просто дурь. Особенно когда для получения значений переменных нужно городить многоэтажную херь.

Joe_Bishop
()
Ответ на: комментарий от Joe_Bishop

>фанатично закрыты все переменные класса, и для получения некоторых значений нужно писать функции.

А зачем писать функции для получения значений переменных? Не проще сделать пабликом те переменные, значения которых нужно получить?

anonymous
()
Ответ на: комментарий от anonymous

> Ну нафиг питон для обработки текста? Для етого есть специально предназначенные языки: Perl и awk.

Видишь ли, "обработка текста" - это, как правило, элемент более сложной задачи. А питон - язык универсальный, и для всех задач хорош.

Если ты на написании строкообработчика с перлом сэкономишь две минуты - то по сравнению с масштабом проекта - это фигня. А если у тебя везде будет написанный на питоне читабельный, хорошо структурированный и портабельный код - это потом спасёт твою задницу не раз.

Перл - язык одноразовый. Для красноглазия хорошо, для работы - плохо.

yk4ever
()
Ответ на: комментарий от anonymous

> ...и питон для меня закончился во взрыве весёлого и здорового смеха.

Молодой человек, наркотики - зло. Вас Минздрав разве не предупредил?

Про питон не смеяться надо, надо на ём писать. Серьёзные, долговременные проекты. Лучше командой. И тогда только придёт понимание, что на самом деле к чему.

yk4ever
()
Ответ на: комментарий от anonymous

>Вот именно, а если надо как-то фильтровать значения, то можно воспользоваться этим http://www.python.org/download/releases/2.2.3/descrintro/#property

Т.е. получается, для реализации хотя бы видимости инкапсуляции, понадобится как и в перле городить подчеркивания в именах переменных и др.? Или есть другой способ? Не флейма ради, а мне действительно интересно, я питона не знаю пока. Подозреваю, что так было сделано неспроста, чем такой способ удобнее чем С++ подобная инкапсуляция?

anonymous
()
Ответ на: комментарий от anonymous

В жабе это считается некошерным: нада делать геттеры-сеттеры. Типа мона и процессом изменения рулить :) А вдруг ты шпиен и подсунешь некорректное значение... :))

Linfan ★★★★★
()
Ответ на: комментарий от Linfan

И что? Питон тоже геттеры/сеттеры поддерживает. Смотрите по ссылке выше.

anonymous
()
Ответ на: комментарий от anonymous

>А удобней перла для обработки текста еще не придумали.

Недавно портировали большой (~.5Mb) проект с перлухи (этот креатиф писали индусы) на жабу. Жаль что вот такого "вумника" под рукой небыло ;) А ведь искали перлотруженика на платную основу... А все почему-то шарахались, глянув на сорс...

Linfan ★★★★★
()
Ответ на: комментарий от anonymous

Не понимаю чем конкретно данный способ отличается от c++. private переменная, к ней интерфейс get/set. Давно си++ не использовал, но сомневаюсь, что там радикально отличается.

anonymous
()
Ответ на: комментарий от yk4ever

> Перл - язык одноразовый. Для красноглазия хорошо, для работы - плохо.

Наверное Вы никогда не писали на перле ничего сложнее Hello, world. При нормальной организации проекта на нем вполне себе пишутся софтины в сотни тысяч строк. Надо просто криворуких хакеров не пускать к коду. Вот к Bugzille пустили, получилась какашка.

anonymous
()
Ответ на: комментарий от yk4ever

> Про питон не смеяться надо, надо на ём писать. Серьёзные, долговременные проекты. Лучше командой. И тогда только придёт понимание, что на самом деле к чему.

Про питона могу сказать одно. Это язык тем сейчас берет, что он активно разрабатывается и поэтому люди начиная на нем писать надеются что он будет лучше и лучше с каждой версией. К сожалению уродский Ларри и Ко. Не выпустили 6-й перл лет так 4-5 назад, поэтому появилась ниша куда питон и залез.

anonymous
()
Ответ на: комментарий от SV0L0CH

> Мне почеуто всё больше и больше нравится ECMAScript

Язык-то, в принципе, неплохой. Но только он сильно застрял в браузере. Соответственно, никаких шансов на использование его в качестве general purpose или, хотя бы, массово для встраивания, уже нет, увы.

AlexM ★★★★★
()
Ответ на: комментарий от krum

>На вкус и цвет, как говорится. Для меня лучше уж отступы, чем $@~ и прочий синтаксический мусор.

Только пожалуйста не стоит тут свои комплексы на других проецировать, ок ? По поводу разгребания исходников через пару лет - и че такого ? Берешь и читаешь, исходник сам по себе не изменится же. Сначала синтаксис перла пугает, да, но когда начинаешь его понимать - такой восторг, сразу хочется тех же наркотиков которые ларри ел, достать, ибо он гений %)

anonizmus
()
Ответ на: комментарий от anonizmus

> Только пожалуйста не стоит тут свои комплексы на других проецировать, ок ? По поводу разгребания исходников через пару лет - и че такого ? Берешь и читаешь, исходник сам по себе не изменится же. Сначала синтаксис перла пугает, да, но когда начинаешь его понимать - такой восторг, сразу хочется тех же наркотиков которые ларри ел, достать, ибо он гений %)

очередной фанатик. ненавижу копаться в исходниках таких типов.

Joe_Bishop
()
Ответ на: комментарий от anonymous

> Не понимаю чем конкретно данный способ отличается от c++. private переменная, к ней интерфейс get/set.

В питоне не принято делать приватные переменные. Потому что, если разобраться, оно ни к чему.

Если геттеры-сеттеры нужны, их лучше оформить не как пару методов (тупые сишные костыли), а как проперть.

yk4ever
()
Ответ на: комментарий от Joe_Bishop

>очередной фанатик. ненавижу копаться в исходниках таких типов.

Во первых тебе эти исходники никто и не даст. Во вторых никто и не заставляет. В третьих - если вы ни асилили синтаксис перла, то это лично ваша половая трудность, всякое бывает, пишите на пистоне, уж там то синтаксис "на высоте" %)

Надоели уже соплежуи высокоуровневые, синтаксис им гламурный для блондинок подавай, блин, вас бы на 10 лет назад, когда соурцером надо было дизасмить бинарник и копаться потом в этом, посмотреть интересно было бы на ваше нытье

anonizmus
()
Ответ на: комментарий от Joe_Bishop

На любом языке можно написать так, что прочитать этот бред будет невозможно. Если руки прямые - код на любом языке будет понятен.

RAS
()
Ответ на: комментарий от anonizmus

> вас бы на 10 лет назад, когда соурцером надо было дизасмить бинарник и копаться потом в этом, посмотреть интересно было бы на ваше нытье

Пока кульхацкеры вроде тебя дизасмили сорцером и ковыряли идой кривые проприетарные бинарники, в отсталой загнивающей Америке уже вовсю развивался Оперсорц. Скоро он и тебя зохавает, смирись и расслабься.

ero-sennin ★★
()
Ответ на: комментарий от yk4ever

Про Перл полностью согласен

> Для красноглазия хорошо, для работы - плохо.

Не поясните ли новенькому, какой точно смысл вкладывают на ЛОРе в "красноглазие"? Термин встречается часто, но не очень понятно, кто точно имеется в виду.

anonymous
()
Ответ на: комментарий от anonymous

> мне это почему то напомнило уродские Makefile-ы с их табами и питон для меня закончился во взрыве весёлого и здорового смеха.
>
> А удобней перла для обработки текста еще не придумали. Продолжайте есть суп китайскими полочками.

хахаха ! :) LOL :) Он удобней перла ничего не видел :) ЫЫЫЫЫЫ :)

anonymous
()
Ответ на: комментарий от anonizmus

> Надоели уже соплежуи высокоуровневые, синтаксис им гламурный для блондинок подавай, блин, вас бы на 10 лет назад, когда соурцером надо было дизасмить бинарник и копаться потом в этом, посмотреть интересно было бы на ваше нытье

LOL! Ты когда школу-то заканчиваешь, какер? Ни 10 лет назад, ни 20 мне почему-то не нужно было ничего "дизасмить", и уж тем более "в этом копаться"! 10 лет назад я спокойно писал на Python переносимые приложения (Linux/Windows) и зарабатывал этим на жизнь.

anonymous
()
Ответ на: комментарий от anonymous

>LOL! Ты когда школу-то заканчиваешь, какер? Ни 10 лет назад, ни 20 мне почему-то не нужно было ничего "дизасмить"

Наверное ты до сих пор "думаешь" что внутри компьютера маленькие зеленые человечки бегают и выполняют команды, ага %) Кстати я вспомнил почему не люблю пистонщиков - они мне чем то дельфинистов напоминают. Такие же твердолобые бараны, как правило

anonizmus
()
Ответ на: комментарий от anonizmus

> Наверное ты до сих пор "думаешь" что внутри компьютера маленькие зеленые человечки бегают и выполняют команды, ага %)

определённо фанатик.

Joe_Bishop
()
Ответ на: комментарий от anonizmus

> Наверное ты до сих пор "думаешь" что внутри компьютера маленькие зеленые человечки бегают и выполняют команды, ага %) Кстати я вспомнил почему не люблю пистонщиков - они мне чем то дельфинистов напоминают. Такие же твердолобые бараны, как правило

Вот писал я раньше на асме. Чужие бинари бывало хакал. Дельфи не люблю. Пишу сейчас на питоне.

Ещё у тебя гипотезы будут?

yk4ever
()
Ответ на: комментарий от anonymous

> Не поясните ли новенькому, какой точно смысл вкладывают на ЛОРе в "красноглазие"?

Классический анекдот есть. Девочка спрашивает:
- Мальчик, а почему ты бабочек в противогазе ловишь?
- Я пионер, я трудности люблю!
- Вау, ты крутой, пойдём потрахаемся!
- Хорошо, но только стоя, в гамаке и на лыжах!

Вот красноглазые - они точно так же, только глубоко ночью, в консоли и на перле.

yk4ever
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.