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

Резултати

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

Пребарај: #dolzarb

当前筛选 #dolzarb清除筛选
Uzbekneftgaz | Расмий канал

@ao_uzbekneftegaz · Post #10678 · 18.12.2025 г., 15:25

#Dolzarb Bosh vazir o‘rinbosari ishtirokida qazib chiqarishni barqarorlashtirish masalalari muhokama qilindi "O‘zbekneftgaz" AJda Bosh vazir o‘rinbosari – Iqtisodiyot va moliya vaziri Jamshid Qo‘chqorov ishtirokida bo‘lib o‘tgan yig‘ilishda Boshqaruv raisi lavozimiga tasdiqlangan Abdug‘ani Sanginov jamoaga rasman tanishtirildi va soha oldida turgan dolzarb masalalar atroflicha muhokama qilindi. 👉Batafsil ______ При участии заместителя Премьер-министра обсуждены вопросы стабилизации добычи В АО «Узбекнефтегаз» состоялось совещание с участием заместителя Премьер-министра — министра экономики и финансов Джамшида Кучкарова. В ходе встречи коллективу официально представили Абдугани Сангинова, утверждённого на должность председателя правления, а также всесторонне обсудили актуальные вопросы, стоящие перед отраслью. 👉Подробно 👇Bizni kuzating: 🌐web-sayt | 📷instagram | 👉telegram | ▶️youtube | 💬facebook

Hashtags

uzsd.uz channel

@uzsduz · Post #3256 · 07.08.2024 г., 10:23

#dolzarb Читайте текст ниже 👇/ matnni quyida o’qing 👇 👇Подписаться на канал👇 https://t.me/uzsduz

Hashtags

IT Blog

@ITbusiness_school · Post #2388 · 10.12.2022 г., 17:44

#dolzarb Qiz tomonga mebel qildirayotganlar to’ydan keyin qanday qilib qizni boshiga chiqib olmasligi, uni xo’rlamasligi mumkin? Qizlarga esa nikoh kuni mahrdan vos kechishini o’rgatishadi. Qiz tomonni juda ko’p narsaga “doljen” qilib qo’yishadi. Bu holat qiz tomonga ham bog’liq. Ota onalar qizingizni “qari qiz” bo’lib qolasan deb bosim o’tkazmang. Bechora qiz uzatilishidan oldin bosimda, toydan keyin ham bosimda bo’lsa nima qilsin? Qizlar ham shundan boshqasiga tegmayman deb o’zlarini yerga urishlariga qo’yib bermasin. Yigitlar! Uylanish oson, mahr arzon shunaqami? Hamiyatli bo’ling. Sizning ahlingiz hayotda siqilib ezilib yurishiga qanday yo’l qo’ymoqdasiz? Xulllas bu holatni yechimi chigal. Muammo bitta nuqtada emas. Tizimli yechim tuzish kerak.

Hashtags

Milliy meros

@termizmuzey · Post #1892 · 20.08.2025 г., 12:47

#Dolzarb 90 kun" Prezidentimiz tashabbusi bilan boshlangan bu loyiha doirasida Termiz shahridagi Ichki ishlar boshqarmasiga qarashli patrul post xizmati xodimlari “ Termiz” davlat muzey-qoʻriqxonada boʻlishdi @termizmuzey

Hashtags

Milliy meros

@termizmuzey · Post #1843 · 05.08.2025 г., 07:37

#Dolzarb 90 kun loyihasi doirasida yoshlarning bo‘sh vaqtlarini mazmunli o‘tkazish maqsadida maktab o‘quvchilari “Termiz” davlat muzey-qo‘riqxonasiga tashrif buyurishni davom ettirmoqda. В рамках проекта «Актуальные 90 дней» школьники продолжают посещать Государственный музей-заповедник «Термез» с целью проведения своего свободного времени с пользой и интересом. @termizmuzey

Hashtags

Milliy meros

@termizmuzey · Post #1828 · 31.07.2025 г., 12:19

#Dolzarb 90 kun" Prezidentimiz tashabbusi bilan boshlangan bu loyiha doirasida mamlakatimiz bo‘ylab yoshlarning bo‘sh vaqtlari mazmunli va qiziqarli o‘tkazilmoqda. Shu tashabbus doirasida yosh maktab o‘quvchilarining “Termiz” davlat muzey-qoʻriqxonasiga tashrifi davom etmoqda Kanalimiz👇 @termizmuzey

Hashtags

IT Blog

@ITbusiness_school · Post #903 · 26.08.2021 г., 18:59

#dolzarb Trening o'tuvchilarga maslahat! 1. Kitobdagi narsalarni emas tajribani soting. 2. Tanqidga uchrashingiz mumkin bo'lgan gaplarni gapirmang. 3. Muammoga yechim bering. 4. Konkret keyslar haqida gapiring. P.s. Treningga borayotgan yigitlar bir narsani qulog'ingizga yaxshilab quyib oling! Ilon Mask kelib trening o'tsa ham o'z ustingizda tinimsiz ishlamasangiz hammasi bir tiyn! 👉@abdusattor

Hashtags

Inoyatulloh | 33 savol

@inoyatulloh_andijoniy · Post #296 · 09.12.2025 г., 14:20

#DOLZARB Odami ersang demagil odami, Onikim yo‘q, xalq g‘amidin g‘ami! © Mir Alisher Navoiy Bizni barcha ijtimoiy tarmoqlarda kuzating 👇🏻 📱Instagram📱YouTube📱Telegram

Hashtags

Inoyatulloh | 33 savol

@inoyatulloh_andijoniy · Post #292 · 28.11.2025 г., 09:46

3️⃣ 3️⃣ Savol #DOLZARB Eng keng tarqalgan yolgʻon: Men sogʻlomman 33 Savol Loyihasi 21+. @urolog_saidislom bilan. Yangi suhbat! Bizni barcha ijtimoiy tarmoqlarda kuzating 👇🏻 📱Instagram📱YouTube📱Telegram

Hashtags

Inoyatulloh | 33 savol

@inoyatulloh_andijoniy · Post #291 · 25.11.2025 г., 11:51

3️⃣ 3️⃣ Savol #DOLZARB 40 yoshga qarab kelayotgan do’stlar otalarimiz bu mavzuda gaplashib ularni olib borib doctorga ko’rsatishimiz kerak-da. Nima deysiz ? 33 Savol Loyihasi 21+. @urolog_saidislom bilan. Yangi suhbat! Bizni barcha ijtimoiy tarmoqlarda kuzating 👇🏻 📱Instagram📱YouTube📱Telegram

Hashtags

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