TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #121 · 20 јул.

Регулярно требуется преобразовать какой-либо текст в максимально совместимый текст для URL, имени файла, имени объекта в каком-то софте и тд. Требования совместимости простые: в тексте должны быть только допустимые символы. Обычно это a-z, 0-9 и "_" или "-". То есть, только прописные буквы латинского алфавита и цифры (как пример). Допустим, нам нужно название статьи в блоге преобразовать в slug для добавления его в URL этой статьи. Как это лучше всего сделать? В Django по умолчанию есть готовая функция slugify для таких случаев. Но я её никогда не использую. Почему? Потому что её недостаточно! Приведём пример >>> from django.utils.text import slugify >>> slugify('This is a Title') 'this-is-a-title' Пока всё отлично >>> slugify('This is a "Title!"') 'this-is-a-title' Спец символы удалились, всё хорошо. >>> slugify('Это заголовок статьи') '' Вот и приехали 😢. Если текст не английский то буквы просто игнорируются. Можно это поправить >>> slugify('Это заголовок статьи', allow_unicode=True) 'это-заголовок-статьи' Но тогда мы не вписываемся в условие. У нас появилась кириллица в тексте. Так как я часто пишу сайты для русскоязычных пользователей эта проблема весьма актуальна. Я не использую стандартную функцию и всегда пишу свою. Оригинал я не беру в расчёт и пишу полностью свою функцию. И так, по порядку: 🔸1. Исходный текст: >>> text = 'Мой заголовок №10 😁!' Взял специально посложней со специальными символами. 🔸2. Транслит Необходимо сделать транслит всех символов в латиницу. Здесь очень выручает библиотека unidecode. Помимо простого транслита кириллицы в латиницу она умеет преобразовывать спец символы и иероглифы в текстовые аналоги. from unidecode import unidecode >>> unidecode("Ñ Σ ® µ ¶ ¼ 月 山") 'N S (r) u P 1/4 Yue Shan' Очень крутая библиотека, советую👍 В нашем случае получаем такое преобразование: >>> text = unidecode(text) >>> print(text) 'Moi zagolovok No. 10 !' Отличный транслит. Смайл просто удалился, хотя я ждал что-то вроде :). Ну и ладно, всë равно невалидные символы. А еще наш код уже поддерживает любой язык, будь то хинди или корейский. 🔸4. Фильтр символов Unidecode не занимается фильтрацией по недопустимым символам. Это мы делаем в следующем шаге через regex. Просто заменим все символы на "_" если они вне указанного диапазона. >>> text = re.sub(r'[^a-zA-Z0-9]+', '_', text) >>> print(text) 'Moi_zagolovok_No_10_' Символ "+" в паттерне выручает когда несколько недопустимых символов идут рядом. Все они заменяются на один символ "_". 🔸5. Slugify Осталось удалить лишние символы по краям и сделать нижний регистр >>> text = text.strip('_').lower() >>> print(text) 'moi_zagolovok_no_10' Получаем отличный slug! 😎 🌎 Полный код в виде функции. ______________ PS. Проверку что в строке остался хоть один допустимый символ я бы вынес в отдельную функцию. #libs#tricks#django

Резултати

Пронајдени 29 слични објави

Пребарај: #celebration

当前筛选 #celebration清除筛选
ART FLASH

@AFmagazine · Post #29567 · 14.02.2026 г., 06:56

💫Любовь — главный двигатель культуры #celebration Из нее рождаются искусство, книги, музыка и фильмы. Она может быть музой, соавтором или привычкой встречаться взглядами через соседний офисный стол. Ко Дню всех влюбленных мы собрали валентинки с парами, без которых невозможно представить ни историю искусства, ни культуру. Узнали в цитатах героев свою половинку, подругу, друга или коллегу? Обязательно отправляйте валентинку 🤍 ART FLASH

Hashtags

ART FLASH

@AFmagazine · Post #28113 · 05.12.2025 г., 13:14

💫Christie’s: рассказываем о том, как моряк основал торговую лавку, ставшую культовым аукционным домом #celebration Первыйаукцион дома Christie’s прошел 5 декабря 1766 года, ровно 259 лет назад. Лотами были вина, мебель, ювелирные изделия, но все они не представляли большой ценности. Сегодня за аукционом пристально следят из разных точек мира, а результаты продаж появляются в утренних сводках. О том, как из маленькой лавочки Christie’s превратился в один самых влиятельным аукционных домов читайте в карточках 🤍 ART FLASH

Hashtags

ART FLASH

@AFmagazine · Post #27110 · 25.10.2025 г., 06:32

💫25 октября — День художника#celebration В момент, когда художник завершает работу, она начинает жить собственной жизнью — наполняется смыслами, чувствами и превращается в отражение взглядов тех, кто на нее смотрит. Но что сами художники думают о своем творчестве? Как они его ощущают и определяют? В честь праздника мы собрали цитаты великих мастеров о творчестве, чтобы взглянуть на искусство глазами тех, кто его создает 🤍 ART FLASH

Hashtags

ART FLASH

@AFmagazine · Post #27026 · 21.10.2025 г., 16:32

💫21 октября — День разноцветных зонтов#celebration Зонтик — аксессуар, который может разбавить серые осенние будни. Однако зонт не всегда защищал от дождя или ветра и скорее был символом достатка и статуса. Мы решили вспомнить историю аксессуара и проследить, как он менялся сквозь время. В карточках читайте о том, где появился зонт и как его украшали в разных странах и эпохах. ART FLASH

Hashtags

ART FLASH

@AFmagazine · Post #26897 · 17.10.2025 г., 06:48

💫17 октября — День «Наденьте что-нибудь безвкусное»#celebration У вас есть уютный, но странный рождественский свитер? Любимое платье из 2000-х? Может быть очень удобные, но некрасивые ботинки? Сегодня тот самый день, когда наконец-то можно смело надеть любимую, но нелепую вещь из гардероба. Праздник появился после одного из эпизодов телесериала «Трое на диване», в котором герой объявил этот праздник. В нашей подборке — образы героинь, вызвавшие у зрителей самые противоречивые реакции. ART FLASH

Hashtags

ART FLASH

@AFmagazine · Post #26743 · 11.10.2025 г., 06:34

💫Какая она — идеальная вечеринка? #celebration 11 октября — день праздника «Это моя вечеринка». Мы решили посмотреть, как отдыхали и развлекались известные личности и где знакомились главные деятели искусства XX века. Роскошь и гламур прошлого столетия может ассоциироваться не только с «Великим Гэтсби» и отдыхом на семейных виллах, но еще и с искусством. В прошлом веке нетворкинг работал немного иначе — соцсетей не существовало, поэтому художники, инвесторы, продюсеры и галеристы находили друг друга на масштабных вечеринках и мероприятиях. Судьбоносные встречи происходили за тесными столиками, а меценаты договаривались о встречах у выхода на улицу. В карточках читайте про 5 главных вечеринок XX века. ART FLASH

Hashtags

ART FLASH

@AFmagazine · Post #26397 · 26.09.2025 г., 16:25

💫26 сентября — День лучшего завтрака #celebration Про этот утренний ритуал многие забывают, пропускают из-за спешки или обходятся просто кружкой кофе. Некоторые художники относились к завтраку как к продолжению своего творчества — и не были банальны в своих предпочтениях. Рассказали про любимую еду некоторых из них в карточках 🤍 ART FLASH

Hashtags

ART FLASH

@AFmagazine · Post #25897 · 05.09.2025 г., 12:48

🌟Не только текст: пять не самых очевидных работ Эрика Булатова #celebration 5 сентября — день рождения Эрика Булатова. Его имя мы привыкли связывать с большими слоганами на фоне неба и городских пространств. Однако творчество художника выходит далеко за рамки текстовых композиций. Мы собрали подборку менее очевидных произведений Булатова — картины без надписей, где он работает с образом города, света и пространства. ART FLASH

Hashtags

ART FLASH

@AFmagazine · Post #29020 · 20.01.2026 г., 07:15

💫106-летие со дня рождения Федерико Феллини#celebration#movie Феллини — один из главных авторов XX века, который превратил экран в пространство памяти и сна, где автобиография становится мифом, а реальность — частью спектакля. В честь дня рождения режиссера мы собрали подборку его ключевых фильмов — от неореалистических истоков до поздних работ. Любите его фильмы? ❤️ — да 💔— нет ART FLASH

ART FLASH

@AFmagazine · Post #28552 · 24.12.2025 г., 17:01

💫24 декабря — День украшения елки #celebration#fashion Люксовые бренды ежегодно превращают новогодние елки в настоящие арт-объекты — от театральных инсталляций до минималистичных, почти музейных объектов. Мы собрали подборку самых эффектных брендовых елок для вдохновения и праздничного настроения. А у вас елка уже готова? ❤️ — да, пришлю фото в комментариях 💔 — еще нет, поставлю ближе к празднику ART FLASH

ART FLASH

@AFmagazine · Post #26032 · 10.09.2025 г., 12:49

💫10 сентября — день рождения Эльзы Скиапарелли#celebration#fashion Настоящая авангардистка, она радикально изменила представление о высокой моде, зарядив ее сюрреализмом, яркими красками и духом эпатажа. Скиапарелли превращала одежду в арт-объекты, воплощая самые смелые фантазии. Сегодня ее дело продолжает модный дом Maison Schiaparelli, даря современным женщинам то самое сочетание дерзости и шарма. Мы собрали для вас подборку вещей, которые стали популярными благодаря ей. Подробнее ー в карточках 🤍 ART FLASH

ART FLASH

@AFmagazine · Post #29253 · 31.01.2026 г., 07:17

💫«Осознанно не “модный” арт-кластер» — интервью с Асей Филипповой в честь дня рождения ЦТИ «Фабрика» #creativeindustry#celebration Как выставочный зал стал целым центром искусства? Какой путь прошел один из старейших арт-кластеров Москвы? Что ждет его в будущем? Об этом и не только побеседовали с генеральным директором Асей Филипповой. Полное интервью можно прочитать на нашем сайте🤍 ART FLASH

ПретходнаСтраница 1 од 3Следна