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

Резултати

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

Пребарај: #savol

当前筛选 #savol清除筛选
IT Masters

@ITmastersuz · Post #11856 · 04.01.2025 г., 04:37

Diqqat savol! Ushbu ko'rinish qanday holatda va qaysi saytda sodir bo'ladi? 👉Bizning barcha loyihalar | #savol

Hashtags

IT Masters

@ITmastersuz · Post #11769 · 17.11.2024 г., 15:46

Milliardlab yuklab olingan ammo juda kamchilik sotib olgan kompyuter dasturi qaysi? 👉Bizning barcha loyihalar | #savol

Hashtags

KOMPYUTER AKADEMIYASI

@Kompyuter_Akademiyasi · Post #5891 · 21.01.2024 г., 13:35

Bepul WiFi zararli(mi)? #savol ❓Jamoat joylaridagi (kutubxona, kafe, belat va h.k.) bepul WiFi dan foydalanish xavfli deb oʻylaysizmi? ❓Xavfli deb hisoblasangiz nima zararlar keltirishi mumkin deb oʻylaysiz? ✅ İzohda javoblaringizni yozib qoldiring, nasib qilsa toʻliq javobni biror koʻrinishda kanalda e'lon qilamiz.

Hashtags

KOMPYUTER AKADEMIYASI

@Kompyuter_akademiyasi · Post #5594 · 14.11.2023 г., 14:35

I'm not a robot #savol ℹ️ Hammamizga ma'lumki oldinlari biror saytdan ro'yxatdan o'tishimizda robot emasligimizni tasdiqlash uchun "I'm not a robot" joyini belgilaganimizdan so'ng qandaydir topshiriqlar (o'xshash rasmlarni tanlash, simmetrik holatini topish va h.k) bajarish orqali tasdiqlanar edi. ❓Hozirda esa hech qanday topshiriqlarsiz shunchaki ✅ belgisi chiqyapti. Buning sababi nima deb o'ylaysiz? 🔜To'g'ri javobni nasib qilsa kechqurun joylayman 😉. 💻 Kompyuterni birga o'rganamiz ⤵️ TelegramIYouTubeIInstaITikTok

Hashtags

KOMPYUTER AKADEMIYASI

@Kompyuter_akademiyasi · Post #4672 · 22.02.2023 г., 15:40

I'm not a robot [javob] #savol ✅Javob: Tizimga "I'm not a robot" joyiga belgi qo'yishingiz unchalik ham ko'p ma'lumot bermaydi (chunki siz hech qanday topshiriqni bajarmadingiz). Tizimga siz ✔️ ni qo'yishgacha bo'lgan ishlaringiz qaror qabul qilishga yordam beradi, ya'ni siz belgi qo'yishingiz orqali tizimga brauzeringiz tarixini tekshirishga ruhsat berasiz. 🔹Tizim esa siz oldinroq nima amallar qilganingiz (videolar ko'rish, e-pochtani tekshirish va h.k) ga qarab qaror qabul qiladi. 😉 Isbot sifatida ushbu maqolani keltiramiz. 💻 Kompyuterni birga o'rganamiz ⤵️ TelegramIYouTubeIInstaITikTok

Hashtags

KOMPYUTER AKADEMIYASI

@Kompyuter_akademiyasi · Post #4669 · 22.02.2023 г., 09:11

I'm not a robot #savol ℹ️ Hammamizga ma'lumki oldinlari biror saytdan ro'yxatdan o'tishimizda robot emasligimizni tasdiqlash uchun "I'm not a robot" joyini belgilaganimizdan so'ng qandaydir topshiriqlar (o'xshash rasmlarni tanlash, simmetrik holatini topish va h.k) bajarish orqali tasdiqlanar edi. ❓Hozirda esa hech qanday topshiriqlarsiz shunchaki ✅ belgisi chiqyapti. Buning sababi nima deb o'ylaysiz? 🔜To'g'ri javobni nasib qilsa kechqurun joylayman 😉. 💻 Kompyuterni birga o'rganamiz ⤵️ TelegramIYouTubeIInstaITikTok

Hashtags

uzmilliymedia

@uzmilliymedia · Post #2590 · 28.04.2024 г., 13:33

#savol Bugungi kun haydovchilari haqida fikringiz❓ "Muloqot" telekanalining "Davr" axborot dasturi. ✅Manba: @muloqottvofficial Telegram | Instagram | Facebook | Sayt | YouTube | LinkedIn | Х

Hashtags

TDYU YURIDIK KLINIKASI

@TDYU_yuridik_klinikasi · Post #2533 · 24.10.2024 г., 06:20

#Savol ⁉️Meni ishim qisqarishga tushgan mutaxasislligim kutubxonachi,u sohada ishlayotgan xodim mutaxasis emas, u sohada 10 yil ishlaganman. Yolg’iz ayolman va 4 nafar farzandim bor. Bu ish o’rnimga qanday da’vogarlik qilsam bo’ladi? ✔️ JAVOB: Hurmatli fuqaro, sizning holatingizda quyidagicha huquqlaringiz mavjud: ▶️ Ish beruvchi qisqarishga tushgan xodimni kamida 2 oy oldin yozma ogohlantirishi lozim. Bunda birinchi navbatda malakasi va mehnat unumdorligi yuqori boʻlgan xodimlarga nisbatan ishda qolish imtiyozi berilishi lozim. ▶️ Agar malakasi va mehnat unumdorligi bir xil bo’lgan taqdirda afzalliklar berilishi kafolatlangan xodimlar ro’yxati keltirilgan bo’lib, quyidagi 3ta band sizga mos kelishi mumkin: - qaramog’ida 2 va undan ortiq kishi bo’lgan xodimlar; - oilasida mustaqil ish haqi oluvchi boshqa xodimlar mavjud bo’lmagan shaxslar; - mazkur ish beruvchidagi uzoq muddatli ish stajiga ega bo’lgan xodimlar. ▶️ Kodeksning 409-moddasida 3 yoshgacha bo’lgan bolasi bor xodim bilan mehnat shartnomasini bekor qilishda kafolatlar belgilangan. Bunday xodimlar bilan mehnat shartnomasini bekor qilishga faqat 161-moddaning 1, 4,5-bandlaridagi asoslarda yoʻl qoʻyiladi. 📌Agar xodim qonunga xilof ravishda ishdan bo’shatilsa, mahalliy mehnat komissiyalari yoki hududiy mehnat organlariga murojaat qilishi yoxud sudga shikoyat berishi mumkin. Kodeks 560-moddasiga asosan, mehnat huquqi buzilganda sudlarga murojaat muddatlari mavjud: 😄Ishga tiklash nizolari bo’yicha — xodimga tegishli buyruq nusxasi berilgan kundan boshlab 3 oy; 😄Mehnat bilan bog’liq boshqa nizolar bo’yicha — xodim o’z huquqi buzilganligini bilgan yoki bilishi lozim bo’lgan kundan boshlab 6 oy. ⚠️Shikoyatda 174- va 565-moddalarga ko’ra moddiy zarar va ma’naviy ziyonni hamda sud xarajatlari qoplanishi talabini kiritish huquqi bor. Sud ish beruvchiga xodimni qayta ishga olish majburiyatini yuklasa-yu, buni imkoni boʻlmasa, shtat jadvaliga oʻzgartirish kiritilib yoki xodimni boshqa ish oʻrni bilan ta’minlash orqali bajariladi. 📎ASOS: O'zbekiston Respubikasi Mehnat kodeksi 21, 161, 174, 409, 560, 565 -moddalari. ⚖️TDYU Yuridik klinika ko'ngilli talabasi: Ergasheva Sabina ✉️Murojaat uchun: @TDYU_Yuridik_klinika_bot 🖥 Bizni ijtimoiy tarmoqlarda kuzating: 💬Telegram 🌐Instagram 🌐YouTube🌐TikTok🌐Facebook

Hashtags

Bukhara Books

@Bukhara_Books1 · Post #2478 · 15.07.2024 г., 15:49

#savol Bukhara Books kitob sotib olganmisiz? Ha bo'lsa, aynan nega sotib olgansiz? Ushbu savolga javoblaringizni izohlarda yozib qoldirishingiz mumkin 😊

Hashtags

123•••78
ПретходнаСтраница 1 од 8Следна