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

Резултати

Пронајдени 4,010 слични објави

Пребарај: #iran

当前筛选 #iran清除筛选
Casus Belli Live

@casusbellilive · Post #250720 · 04.04.2026 г., 10:55

⚡️🇮🇷🇮🇱Minulú noc iracká raketa zasiahla jeden z najdôležitejších tajných vojenských výrobných objektov v Izraeli. Tento závod patrí spoločnosti Albeit Military Industries a nachádza sa pri leteckej základni Nevatim v Negeve. Vyrábajú sa tu najmodernejšie izraelské zbrane, vrátane bezpilotných lietadiel a vysoko technologického špionážneho vybavenia. Irán sa už niekoľkokrát pokúsil tento objekt zaútočiť, no bez úspechu. Avšak minulú noc sa Iránu naozaj podarilo zasiahnuť závod a zničiť ho. #Iran 🎯@opersvodki 💬ОС в MAX 🌐Zdroj:@SIL0VIKI 🔗Link:https://t.me/SIL0VIKI/109240 https://t.me/casusbellilive Truth over narrative 24/7 WEB | CONTACT | SHOP 📅Vytvorené: 2026-04-04 12:32:03

Hashtags

BrainlessChanelx

@BrainlessChanelx · Post #140787 · 27.04.2026 г., 17:16

🇷🇺🇮🇷 — Le ministre iranien des Affaires étrangères, Abbas Araghchi, rencontre le président russe Vladimir Poutine et le ministre russe des Affaires étrangères, Sergueï Lavrov, en Russie. Le président russe Vladimir Poutine : Le peuple iranien lutte avec courage et héroïsme pour sa souveraineté. 🔹 J'ai reçu un message du Guide suprême la semaine dernière. 🔹 La Russie espère que le peuple iranien surmontera cette période difficile et que la paix prévaudra. 🔹 La Russie fera tout ce qui est en son pouvoir pour établir la paix au Moyen-Orient dès que possible. 🔹 Nous ferons tout ce qui sert les intérêts de #Iran et des pays de la région. 🔹 La Russie est déterminée à poursuivre ses relations stratégiques avec l'Iran. @BrainlessChanelx

Hashtags

‼️ВНИМАНИЕ 🇦🇲🇮🇷 Сообщаем, что Молодёжная организация Республиканской партии Армении (РПА) организует сбор медикаментов и медицинских принадлежностей в поддержку братского народа Ирана. Инициатива продлится до понедельника включительно, после чего вся собранная помощь в тот же день будет передана в Посольство Исламской Республики Иран. В эти дни как никогда важно быть рядом с нашим дружественным народом. 📍Адрес сбора Мелик Адамян 2 #IRAN🇮🇷 Генрих Даниелян

Hashtags

Roy - الحرب الثالثة

@Royy_tweets · Post #109420 · 11.04.2026 г., 16:48

#Iran's missile arsenal Only 2,500 missiles… or much more? The shocking truth revealed Discover the real power behind Iran's missiles video link:https://youtu.be/EeVWESpmPso?si=SP4qYsr0OID8D0r4

Hashtags

⚡️🇮🇷🇮🇱 Вечером Иран запустил новую волну ракет по Тель-Авиву и его пригородам, поразив ряд целей после того, как система ПРО "Железный купол" не смогла перехватить большинство из них. #iran 🎯@opersvodki 💬ОС в MAX

Hashtags

Яблочки Z

@yablochkiz · Post #84996 · 19.04.2026 г., 16:17

⚡️Два танкера СПГ проходят через Ормузский пролив в координации с КСИР. Танкер «MEDA» находится под санкциями Управления по контролю за иностранными активами, тогда как танкер «G SUMMER» обозначен как «принадлежащий китайским владельцам». #iran 🎯@opersvodki 💬ОС в MAX

Hashtags

FG - Freie Gedanken 🦁

@FGNews07 · Post #81787 · 08.04.2026 г., 01:05

Der Vizepräsident des Center for China and Globalization, Victor Gao, sagt, dass der Einsatz eines nuklearen Sprengkopfs durch Israel gegen irgendein Land, auch gegen #Iran , das Ende Israels als Staat bedeuten wüde. Die Äußerung fiel vor dem Hintergrund der US-israelischen Aggression gegen den Iran in einem Interview mit The Cradle am 17. März 2026. Victor Gao ist kein offizieller Sprecher Chinas , tritt aber häufig wie ein quasi-offizieller Fürsprecher chinesischer Staatspositionen auf. Es ist formal dazu nicht befugt, allerdings ist seine öffentliche Rolle stark darauf angelegt ist, China nach außen zu repräsentieren. Und so wird er international anerkannt. t.me/FGNews07

Hashtags

RT en français

@RTenfrancais · Post #80750 · 03.05.2026 г., 18:40

⏺Pas d’avancée Les États-Unis et l'#Iran continuent de chercher des voies pour parvenir à une résolution diplomatique de la guerre, mais campent fermement sur leurs lignes rouges. 🗣Pour approfondir le sujet, nous recevons notre invité, Jamal Wakim, professeur d'histoire contemporaine et de relations internationales à l'Université libanaise. RT en français • Osez questionner !

Hashtags

RT en français

@RTenfrancais · Post #80516 · 30.04.2026 г., 18:45

🟢Aucune sortie de crise avec l'#Iran : le prix du Brent atteint un nouveau record Donald Trump hésite quant à la marche à suivre concernant l’évolution du conflit en Iran. Il doit être briefé par le Pentagone, qui lui soumettra plusieurs options. Nous les évoquons avec Antoine Cléraux, en plateau. RT en français • Osez questionner !

Hashtags

RT en français

@RTenfrancais · Post #80152 · 27.04.2026 г., 06:00

💬L'#Iran a soumis une nouvelle proposition aux États-Unis : levée du blocus américain, ouverture du détroit d'Ormuz et nouvelles discussions sur le programme nucléaire iranien sont les principales requêtes, a rapporté Axios, citant des sources. RT en français • Osez questionner !

Hashtags

123•••100•••200•••300•••334335
ПретходнаСтраница 1 од 335Следна