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

Резултати

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

Пребарај: #faxr

当前筛选 #faxr清除筛选

#FAXR ⭐️O‘rta Chirchiqlik o‘quvchilar respublika tanlovida faxrli 2-o‘rin sohibiga aylandi ✍️O‘rta Chirchiq tumanidagi 72-sonli umumta’lim maktabi o‘quvchilaridan tashkil topgan “Eco Leaders” jamoasi “Siz ekologiyaga oid qonunlarni bilasizmi?” ko‘rik-tanlovining respublika bosqichida faol ishtirok etib, yuksak natijani qo‘lga kiritdi. 🔵Joriy yilning 12–14 mart kunlari Toshkent shahrida bo‘lib o‘tgan mazkur nufuzli tanlovda mamlakatimizning 14 ta hududidan saralangan g‘olib jamoalar o‘zaro bilim va mahoratlarini namoyon etdilar. Qizg‘in va murosasiz bellashuvlarga boy bo‘lgan tanlov yakunida O‘rta Chirchiq tumani 72-maktabining “Eco Leaders” jamoasi munosib ishtirok etib, faxrli 2-o‘rinni qo‘lga kiritdi. 🤩Tanlov natijalariga ko‘ra jamoa 12 million so‘m pul mukofoti, faxriy yorliqlar hamda esdalik sovg‘alar bilan taqdirlandi. Ushbu yutuq maktab jamoasi, o‘qituvchilar va o‘quvchilarning ekologik bilimlarni targ‘ib qilish, tabiatni asrash va ekologik madaniyatni yuksaltirish yo‘lida olib borayotgan samarali ishlarining yana bir yorqin natijasi bo‘ldi. ⭐G‘olib jamoa a’zolarini ushbu munosib yutuq bilan samimiy muborakbod etamiz hamda kelgusida ham ularga yanada yuksak marralarni zabt etishlarini tilaymiz 🌍🌍🌍🌍🌍🌍 Kanalni yaqinlaringiz bilan ulashing ❤https://t.me/toshkentv_xtb| 🌐Facebook| 🔎Veb-sayt | 🌐Instagram|▶️YouTube 👍@ToshvilmmtbgamurojaatBot

Hashtags

Buxoro shahar hokimligi | Rasmiy

@buxoroshahhokimligi · Post #49565 · 17.02.2026 г., 08:38

#Faxr Maktab o‘quvchilari muddatidan oldin talabalik maqomiga erishdi Buxoro shahar 35-maktabining 10-sinf o‘quvchilari — Mirzojon To‘rayev va Behruzjon Toirov o‘zlari tanlagan ta’lim yo‘nalishlari bo‘yicha oliy ta’lim muassasalariga kirish uchun talab etiladigan fanlardan milliy sertifikatlarni muvaffaqiyatli qo‘lga kiritdi. Ular yuqori natija ko‘rsatib, oliy ta’limga kirish uchun belgilangan maksimal — 189 ballni jamg‘ardi. Mazkur ko‘rsatkich yoshlarning hali maktab partasidayoq muddatidan oldin talaba bo‘lish imkoniyatini qo‘lga kiritganini anglatadi. Bu muvaffaqiyat — o‘quvchilarning tinimsiz mehnati, ustozlarning fidokorona sa’y-harakati hamda ta’lim muassasasida yaratilgan samarali va motivatsion o‘quv muhitining yorqin natijasidir. Yoshlarimizning bunday yutuqlari boshqalarga ham ibrat bo‘lib, kelajak avlodni yanada yuksak marralar sari ruhlantiradi. 🌎Veb-sayt📱Telegram📱Facebook📱You Tube📱Instagram

Hashtags

©Husniddin Isakov

@isakovxusniddin · Post #6985 · 04.09.2023 г., 06:49

🇺🇿 Bu safar O'zbekiston va Universitetim bayrog'ini ko'tardim! Jamoamiz bilan yangi o'quv yilini ham yaxshi kayifiyatda boshlab oldik. Yangi o'quv yili barcha talabalarga xayrli va manfaatli bo'lsin. Ohirgi bosqichga ham yetib keldim, 1 yildan so'ng universitetni tamomlayman. P.S/ Xudoga shukur 1,2,3 va 4 kursda ham bayrog'imizni o'zim ko'tardim, maktabda ham o'zim ko'tarar edim) 🙌Xalqaro darajada, boshqa yurtlarda ham bayrog'imizni ko'klarga ko'tarish nasib qilsin! #Faxr @isakovxusniddin

Hashtags

Ali Ahmad

@AlisherAhmatovich · Post #680 · 08.11.2022 г., 18:23

Jiddaga kelib qoʻndik… Ma’lumot uchun eslataman, Jidda shahriga qoʻnish uchun atiga bir nechtagina davlatlarning huquqi bor deb eshitdim. #Faxr

Hashtags

XORAZMIYLAR

@xorazmiylar_kanali · Post #4981 · 19.08.2025 г., 07:01

#faxr #yangiruhiyat Missiya bajarildi – O‘zbekiston yoshlari Ginnes rekordini yangiladi «Yangi O‘zbekiston» bog‘ida tarixiy voqea sodir bo‘ldi. 1946 nafar iste’dodli yosh muhandis bir vaqtning o‘zida 1946 ta kichik robotni yig‘ib, Ginnes rekordini o‘rnatdi. Bizni ijtimoiy tarmoqlarda kuzating! | Telegram | Facebook | Youtube|Instagram|

#ШИДДАТКОР_МУТАСАДДИ ХИЛОЛА УМАРОВА; #faxr Muhammad al-Xorazmiy nomidagi ixtisoslashtirilgan maktab o‘quvchilari Elbek Zohidjonov va Asilbek Sunnatov AQShning Massachusetts Institute of Technology (MIT) universitetiga 100 foizlik grant asosida o‘qishga qabul qilindi. Bugun ushbu yigitlar universitetimizga yoʻqlab kelganda xursand boʻldim. Oʻzbek yoshlari juda iqtidorli, bilimli. Davlatimiz rahbari boshchiligida ular uchun juda katta imkoniyatlar yaratilmoqda. Men ishonaman, hali koʻp qorakoʻzlarimiz MIT kabi dunyoning eng noyob va iqtidorli yoshlarini saralab oladigan TOP universitetlarga grant asosida qabul qilinadi. Barakalla, yigitlar, sizlar faxrimizsiz! Katta natijalarga erishing, yuksak ilm choʻqqilarini zabt eting, Vatanimiz nomini hamisha baland tuting! БАТАФСИЛ https://www.facebook.com/share/p/18BL9kzaEX/ ХАВОЛАДА. @Deputatlar_minbari @Yangi_deputatlar_minbari

Andijan Development Center

@adceducate · Post #9141 · 07.01.2025 г., 09:11

🌟Талабаларимиз CEFR сертификатларини қўлга киритишди!🌟 🤝ADC талабалари имтиҳонлардан муваффақиятли ўтиб, CEFR сертификатларини қўлга киритишганини мамнуният билан эълон қиламиз! 🎓✨ Бу ютуқлар улар учун янги имкониятлар ва истиқболларни очади. 💪 Сизнинг меҳнатингиз ва муваффақиятга интилишингиз муносиб мукофотлар олиб келди. Энди сизларни янги чегаралар ва ёрқин имкониятлар кутмоқда! 🌍🚀 🤝ADC сизлардан фахрланади ва янги чўққиларни забт этишингизда ёрдам бериб боради. 📚🏆 Табриклаймиз ва келгусида ҳам улкан ютуқлар тилаймиз! 🎉🎈 #ADCMuvaffaqiyati#CEFR#ADCTa'limMarkazi #InglizTili#ChetEldaTa'lim #Ta'lim #Muvaffaqiyat#YangiImkoniyatlar#Faxr#Motivatsiya#G'alabalar"