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

Резултати

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

Пребарај: #guestlecture

当前筛选 #guestlecture清除筛选

🎓 ⚡️“Toshkent” Respublika fond birjasi boshqaruvi raisi - Georgiy Paresishvili tomonidan: “O‘zbekistonda kapital bozorining rivojlanishi: muammolar va istiqbollar” mavzusidagi ma’ruza bo‘lib o‘tdi. 🇺🇿UZB Георгий Паресишвили - председатель правления Республиканской фондовой биржи "Тошкент" провел лекцию на тему "Развитие рынка капитала в Узбекистане: вызовы и перспективы" 🇷🇺RU Georgiy Paresishvili, Chairman of the Board of the Republican Stock Exchange "Tashkent", delivered a lecture on the topic "Development of the Capital Market in Uzbekistan: Challenges and Prospects." 🇬🇧ENG #GraduateSchool#GuestLecture Web-site | Telegram | Facebook |Instagram

🎓“Toshkent” Respublika fond birjasi boshqaruvi raisi - Georgiy Paresishvili tomonidan: “O‘zbekistonda kapital bozorining rivojlanishi: muammolar va istiqbollar” mavzusidagi ma’ruza bo‘lib o‘tadi. Batafsil: 🗓️19-Yanvar ⏰ 10:30 📞 +998 71-239-03-01 #GraduateSchool#GuestLecture Web-site | Telegram | Facebook |Instagram

👥Бейсенбідегі жұмыс күнін өте қызық әрі пайдалы дәріспен қорытындыладық. ⠀ Guest Lecture жобасының алғашқы қонағы — Бельгия Корольдігінің Қазақстандағы Елшісі Анри Вантигем «1830-1936 жылдардағы Бельгия нейтралитеті» тақырыбы аясында дәріс оқыды. Кездесуде Бельгия тарихы, сыртқы саясаттағы бағдары және «мәңгі бейтараптығы» туралы тарихи-танымдық мол мәлімет айтылды. ⠀ Дәріс үшін Елші мырзаға зор алғыс білдіреміз! __ 👥Thursday concluded with an interesting lecture as part of the «Guest Lecture» series. ⠀ The first guest lecture had, as its speaker, the Ambassador of the Kingdom of Belgium to the Republic of Kazakhstan, Mr. Henri Vantieghem, who gave a lecture on the topic «Belgian neutrality in 1830-1936». During the meeting, a lot of historical and educational information was presented about the history of Belgium, the country’s foreign policy and it’s «eternal neutrality». ⠀ We express our gratitude to Mr. Ambassador for the lecture! ⠀ #ҚҚДИ#KIPD#GuestLecture

Qora tuynuklar haqida ko'proq bilishni istaysizmi? ✅ "Yangi O'zbekiston" universitetida dunyoda 44-o'rinda turuvchi Fudan universitetidan kelgan professor Cosimo Bambi tomonidan Qora tuynuklar bo'yicha ma'ruza tashkil etiladi. 🌌 Ushbu ma'ruzada ishtirok etib, siz qora tuynuklar bo'yicha yangi bilimlar olishingiz yoki mazkur sohada ko'p yillik tajribaga ega professordan o'zingizni qiziqtirgan savollarga javob olishingiz mumkin. 🗓Vaqti: 6-dekabr, 14:00 📍Manzil: MATH bino, 105-xona ➖ Cosimo Bambi "Yangi O'zbekiston" universitetining ilg'or tadqiqotchi-olimlaridan biri hisoblanadi. 📌Barcha talabalarimiz ma'ruzada ishtirok etishlari mumkin. 🔁English ➖➖➖➖➖➖➖➖➖➖➖➖➖ #qora_tuynuklar#guestlecture ⬇️Biz ijtimoiy tarmoqlarda: Veb-sayt | Telegram | Instagram | Facebook

👤Сегодня в стенах института состоялась гостевая лекция на тему «Когнитивный капитал страны: как есть и что делать?» Лектором выступил Мухит Елеуов - партнёр юридической фирмы ADL Disputes, выпускник Гарвардской школы государственного управления им. Джона Ф. Кеннеди, PhD. В ходе встречи обсуждалась роль когнитивного капитала как ключевого фактора конкурентоспособности страны: понятие интеллекта и его значение. Рассмотрены современные научные подходы к его изучению. В обсуждении приняли участие сотрудники института, а также представители научного сообщества. Институт выражает благодарность Мухиту Елеуову за содержательную лекцию! #ҚҚДИ#ҚҚДИ#guestlecture#когнитивныйкапитал

🇺🇿O‘zbekistonda islom moliyasi: taraqqiyot, istiqbol va imkoniyatlar 👥 “Mezon Kengashi” Islom moliya konsalting kompaniyasi direktori, O‘zbekiston Xalqaro Islom akademiyasi o‘qituvchisi, ✍🏻Sertifikatlangan shariat maslahatchisi va auditori (CSAA), AAOIFI (Manama, Bahrayn) - Muzaffar Xusniddinov tomonidan o‘tkazilgan mahorat darsidan video reportaj. 📑Mahorat darsi davomida bugungi kunda dolzarb bo‘lgan Islom moliyasining mezonlari ko‘rib chiqildi. #GraduateSchool#GuestLecture#Finance#Training Web-site | Telegram | Facebook | Instagram

O‘zbekistonda islom moliyasi: taraqqiyot, istiqbol va imkoniyatlar 🇺🇿UZB ___ Islamic Finance in Uzbekistan: development, prospects and opportunities 🇬🇧ENG ___ Исламские финансы в Узбекистане: развитие, перспективы и возможности 🇷🇺RU #GraduateSchool#GuestLecture#Finance#Training Web-site | Telegram | Facebook | Instagram

💭“Biznesda mahorat darslari” loyihasida O‘zbekistonda xotin-qizlar tadbirkorligini rivojlantirishga bag‘ishlangan navbatdagi mahorat darsi bo‘lib o‘tdi 🇺🇿UZB ___ The “Business Master Class” project recently held another master class focused on the development of women’s entrepreneurship in Uzbekistan 🇬🇧ENG ___ В рамках проекта «Бизнес мастер-класс» прошел очередной мастер-класс, посвященный развитию женского предпринимательства в Узбекистане 🇷🇺RU #GraduateSchool#GuestLecture#Women#Entrepreneurship Web-site | Telegram | Facebook | Instagram

👥The second meeting of the Guest Lecture project Today, on the eve of International Women's Day (March 8), the Ambassador of the Kingdom of the Netherlands to Kazakhstan, Nico Schermers gave a lecture on the topic «The formation of a feminist foreign policy». The Netherlands is one of the world leaders in gender equality. Equal representation of women in public and corporate governance institutions - is one of the main principles of Dutch politics. During the meeting, the Ambassador spoke about the Netherlands' experience in implementing a feminist foreign policy, as well as the country's political decisions and initiatives. The audience actively engaged in discussions and exchange of opinions. We express our sincere gratitude to Mr. Ambassador for the lecture! #KIPD#ҚҚДИ#GuestLecture#GenderEquality

👥Guest Lecture жобасының екінші кездесуі Бүгінгі қонағымыз — Орта Азиядағы Нидерланд Корольдігінің елшісі Нико Схермерс. Ол 8 наурыз — Халықаралық әйелдер күні қарсаңында «Феминистік сыртқы саясатты қалыптастыру» тақырыбында дәріс оқыды. Нидерланды – гендерлік теңдік көрсеткіші бойынша ең үлкен прогреске ие елдердің бірі. Әйелдердің мемлекеттік және корпоративтік басқару институттарындағы тең өкілдігі Нидерланды саясатындағы басты принциптердің бірі ретінде бекітілген. Осыған қатысты спикер Нидерланды Корольдігінің феминистік сыртқы саясатты қабылдауы және елдің өзге де саяси шешімдері мен бастамалары туралы мазмұнды ақпарат айтты. Қатысушылар да тақырыпты қызу талқылап, өзара пікір алмасты. Дәріс үшін Елші мырзаға зор алғыс білдіреміз! #KIPD#ҚҚДИ#GuestLecture#GenderEquality

“Biznesda mahorat darslari” loyihasida innovatsion iqtisodiyotni rivojlantirishda IT sohasining o‘rniga bag‘ishlangan uchrashuv bo‘lib o‘tdi 🇺🇿UZB ___ The first meeting of the "Business Master Class" project was held to discuss the role of IT in developing the innovation economy 🇬🇧ENG ___ В рамках проекта «Бизнес мастер-класс» состоялась встреча посвященная роли IT сферы в развитии инновационной экономики 🇷🇺RU #GraduateSchool#GuestLecture#Business#Discuss Web-site | Telegram | Facebook | Instagram

🇪🇸 Xalqaro biznes sohasida ekspert, ispaniyalik Romero de Marselo Adolfo tomonidan Oliy maktabning professor, o‘qituvchi va tinglovchilari uchun. 🇺🇿 “O‘zbekistonning kichik va o‘rta biznes kompaniyalari uchun Yevropa Ittifoqi bozoriga kirish va xalqaro biznes yuritish imkoniyatlari” mavzusida ma’ruzasidan video-reportaj. #GraduateSchool#GuestLecture#SME#Internalization Web-site | Telegram | Facebook | Instagram

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