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

Резултати

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

Пребарај: #milliyliboslarkuni

当前筛选 #milliyliboslarkuni清除筛选
KIUT | Namangan rasmiy

@kiut_nm · Post #5262 · 05.12.2025 г., 04:12

#Milliyliboslarkuni Milliylikning ijobiy ahamiyatini keng jamoatchilikka yetkazish hamda milliy qadriyatlarni targ‘ib qilish maqsadida Toshkent Kimyo xalqaro universiteti Namangan filialining talabalari tomonidan milliy liboslarda yaratilgan ko‘rinishlarni e’tiboringizga havola etamiz. 🌍BE SMART! BE SKILLED! BE PROFESSIONAL! Bizni kuzating👇 🌐Website I ✅Telegram I 🌐Instagram I 📹Youtube I

Transport litseyi

@transportlitseyi · Post #4347 · 24.10.2025 г., 10:00

🇺🇿 Milliy liboslar — millat faxri! Bugun Toshkent davlat transport universiteti akademik litseyida“Milliy kiyimlar kuni” keng nishonlandi. Tadbir davomida o‘quvchilar va o‘qituvchilar o‘zining milliy liboslarida ishtirok etib, xalqimizning boy madaniy merosi, urf-odatlari va qadriyatlarini o‘zida mujassam etgan liboslarni namoyish etishdi. #MilliyLiboslarKuni #Yoshlar#Akademik_litsey 📲Akademik litsey sahifalari: Telegram | Instagram | Facebook

Transport litseyi

@transportlitseyi · Post #4250 · 10.10.2025 г., 12:22

🏛 Toshkent davlat transport universiteti akademik litseyida “Milliy liboslar kuni” keng nishonlandi. Tadbirning maqsadi – o‘quvchi-yoshlar orasida milliy qadriyatlar, madaniyat va an’analarimizni targ‘ib qilish, milliy liboslar orqali Vatanimizga bo‘lgan mehr va faxr tuyg‘usini kuchaytirishdan iborat bo‘ldi. Litsey o‘quvchilari turli hududlarning milliy kiyimlarida ishtirok etib, o‘ziga xos madaniy rang-baranglikni namoyon etdilar. Tadbir jarayonida milliy kuy-qo‘shiqlar, raqslar va ijodiy chiqishlar barchaga bayramona kayfiyat ulashdi. 🌺 #MilliyLiboslarKuni #Yoshlar#Akademik_litsey 📲Akademik litsey sahifalari: Telegram | Instagram | Facebook

Transport litseyi

@transportlitseyi · Post #4223 · 03.10.2025 г., 08:37

🏛Toshkent davlat transport universiteti akademik litseyida Milliy liboslar kuni nishonlandi! Tadbir davomida o‘quvchilarimiz milliy qadriyatlarimizni o‘zida mujassam etgan rang-barang liboslarda ishtirok etib, o‘zbek xalqining boy madaniy merosi, urf-odatlari va an’analarini namoyish etishdi. 💐 Tadbir samimiy va ko‘tarinki ruhda o‘tdi. #MilliyLiboslarKuni #Yoshlar#Akademik_litsey 📲Akademik litsey sahifalari: Telegram | Instagram | Facebook

Jinoyat protsessi

@TSUL_CPL · Post #3170 · 26.09.2025 г., 10:34

2️⃣2️⃣2️⃣ ⚖️TDYUda har juma “Milliy qadriyatlar va Milliy liboslar” kuni ! 💥💥💥💥💥💥💥💥💥💥 ⚖️Jinoyat-protsessual huquqi kafedrasi professor-o‘qituvchilari milliy urf-odatlarimizni tarannum etuvchi ushbu tadbirida o‘zlarining betakror milliy kiyimlari bilan faol ishtirok etishmoqda. 🇺🇿Milliy qadriyatlarimiz – faxrimiz! 📸 Yuqorida tadbirdan eng yorqin lahzalar! ✨ #MilliyLiboslarKuni#TDYU#JinoyatProtsessualHuquqi#MilliyQadriyatlar

Jinoyat protsessi

@TSUL_CPL · Post #2937 · 28.03.2025 г., 08:10

💃🏻✨TDYUda har juma “Milliy qadriyatlar va Milliy liboslar” kuni 🌹💫Jinoyat-protsessual huquqi kafedrasi professor-o‘qituvchilari milliy urf-odatlarimizni tarannum etuvchi ushbu tadbirida o‘zlarining betakror milliy kiyimlari bilan faol ishtirok etishmoqda hamda universitetimizning Navro’z tadbiriga tayyorgarlik ko’rishmoqda. 🇺🇿Milliy qadriyatlarimiz – faxrimiz! 📸 Yuqorida tadbirdan eng yorqin lahzalar! ✨ #MilliyLiboslarKuni#TDYU#JinoyatProtsessualHuquqi#MilliyQadriyatlar

Jinoyat protsessi

@TSUL_CPL · Post #2882 · 28.02.2025 г., 12:29

🇺🇿🇺🇿🇺🇿TDYUda “Milliy liboslar” kuni nishonlandi!✨🧡 🍀🍀🍀28-fevral kuni Jinoyat-protsessual huquqi kafedrasi professor-o‘qituvchilari milliy urf-odatlarimizni tarannum etuvchi “Milliy liboslar” tadbirida faol ishtirok etishdi! ⭐️ ⭐️ ⭐️ Tadbir doirasida milliy liboslar namoyishi, fotosessiyalar, fleshmoblar tashkil etilib, kafedra a’zolari o‘zining betakror milliy kiyimlari bilan tadbirga yanada ko‘tarinki ruh bag‘ishlashdi. 🟥🟥🟥Milliy qadriyatlarimiz – faxrimiz! #MilliyLiboslarKuni#TDYU#JinoyatProtsessualHuquqi#MilliyQadriyatlar @TSUL_CPL

"TERMIZ MTU" filiali Rasmiy kanali

@Termiz_MTU · Post #14052 · 01.05.2026 г., 10:27

MILLIY LIBOS — MILLIY RUH AKSI. Bugun Termiz temir yo‘l vokzalida ish jarayonlari o‘zgacha kayfiyatda tashkil etildi. Haftaning juma kuni doirasida o‘tkazilayotgan “Milliy liboslar kuni” tashabbusi vokzal xodimlari ishtirokida yuqori ruhda davom etdi. Milliy liboslarda faoliyat yuritgan xodimlar xizmat jarayonlariga nafaqat tartib va mas’uliyat, balki milliy ruh va o‘ziga xos go‘zallik ham olib kirishdi. Atlas va adras matolaridan tikilgan liboslar vokzal muhitiga iliqlik va estetik uyg‘unlik bag‘ishladi. Mazkur tashabbus orqali milliy qadriyatlarimizni asrab-avaylash, ularni kundalik hayotimizga singdirish hamda yosh avlod qalbida milliy o‘zlikni mustahkamlashga alohida e’tibor qaratilmoqda. Termiz temir yo‘l vokzali jamoasi esa ushbu ezgu g‘oyani qo‘llab-quvvatlab, milliy an’analarimizni amalda namoyon etishda faol ishtirok etmoqda. #MilliyLiboslarKuni#TermizVokzali#TemirYol#MilliyQadriyatlar#Juma#Uzbekistan "Termiz MTU" filiali matbuot xizmati Rasmiy sahifalarimiz: 🚉 📱Telegramm |📱Facebook |📱Web|