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 слични објави

Пребарај: #tasnim

当前筛选 #tasnim清除筛选
Донецкий180🇷🇺

@donetskiy180 · Post #39025 · 12.04.2026 г., 04:10

❗️Американская делегация во главе с вице-президентом Джей Ди Вэнсом покинула Исламабад Несколько фактов вокруг переговоров: ▪️Дата, время и место следующего раунда переговоров США и Ирана неизвестны — агентство #Tasnim. ▪️Вэнс сообщил, что Иран и США не смогли прийти к соглашению по итогам переговоров. ▪️По словам Джей Ди делегация США уезжает из Исламабада, передав Ирану последнее и наиболее выгодное предложение. Решение за Тегераном. ▪️Также вице-президент США заявил, что пока не видит готовности Ирана отказаться от возможности разработки ядерного оружия. ▪️Власти Ирана выдвинули разумные предложения на консультациях с США в Исламабаде и готовы не спешить с переговорами, поскольку мяч находится на стороне Вашингтона — Tasnim. ▪️Главное расхождение, по информации источников портала, связано с Ормузским проливом. ▪️Иран и США достигли понимания по ряду вопросов, но по 2-3 важным темам мнения разошлись — МИД исламской республики.

Hashtags

Донецкий180🇷🇺

@donetskiy180 · Post #38908 · 08.04.2026 г., 00:46

Иранцы подтверждают 🇮🇷🇺🇸🇮🇱 Между Ираном, США и Израилем установят двухнедельное прекращение огня с определенными условиями — #Tasnim.

Hashtags

Marx21.it

@marx21news · Post #10107 · 03.04.2026 г., 13:02

🇮🇷🇱🇧 Sostegno dell’Iran alla sovranità e all’integrità territoriale del Libano Il Ministro degli Esteri iraniano, Abbas Araghchi, ha ribadito in una conversazione con il Presidente del Parlamento libanese Nabih Berri il pieno sostegno di Teheran alla sovranità, all’indipendenza e all’integrità territoriale del Libano. Durante il colloquio di venerdì, Araghchi ha condannato le aggressioni del regime sionista contro il Libano, sottolineando che l’obiettivo di Israele è distruggere le infrastrutture vitali e forzare lo sfollamento dei cittadini libanesi dalle loro terre. Ha inoltre fornito un resoconto sulla recente aggressione USA-Israele contro l’Iran e sulle risposte decisive delle Forze armate iraniane. Entrambe le parti hanno evidenziato l’importanza dell’unità interna libanese per contrastare i piani stranieri e hanno ribadito la volontà di rafforzare le relazioni bilaterali. 🇮🇷 Iran e Libano uniti di fronte alle minacce comuni. #Iran#Libano#Sovranità#Resistenza#Tasnim https://www.marx21.it/internazionale/liran-ribadisce-il-sostegno-alla-sovranita-del-libano/

Marx21.it

@marx21news · Post #10092 · 01.04.2026 г., 14:44

🇮🇷 Iran: Pezeškiyān cita le proteste "No Kings" e accusa: "Gli USA sono stanchi della politica Israel First" In piena guerra contro l'Iran, il presidente Mas'ud Pezeškiyān lancia un messaggio chiaro al popolo americano. Riprendendo le proteste "No Kings" che agitano gli Stati Uniti, il leader iraniano afferma che una parte crescente della società nordamericana rifiuta la subordinazione di Washington alla linea del regime sionista. «Gli esperti di IA negli USA dovrebbero far capire a Trump la realtà delle persone che protestano contro la politica "Israel First"», ha scritto su X. «Sono stanchi che re israeliani governino sulla democrazia americana». Il riferimento è alla crescente inquietudine interna dopo l’aggressione USA-Israele contro Teheran, scatenata dall’assassinio dell’ayatollah Khamenei il 28 febbraio. Secondo Teheran, i bombardamenti su obiettivi civili e militari hanno causato vittime e danni ingenti, mentre le rappresaglie iraniane con missili e droni hanno colpito basi statunitensi e israeliane. Pezeškiyān invita a non confondere i governi con i popoli: “Il popolo americano è arrabbiato. Ascoltate il vostro Paese”. #Iran#USA#NoKings#IsraelFirst#Tasnim#Geopolitica https://www.marx21.it/internazionale/iran-pezeskiyan-cita-le-proteste-no-kings-e-afferma-che-gli-statunitensi-respingono-la-politica-israel-first/