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

Резултати

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

Пребарај: #apache

当前筛选 #apache清除筛选
🇹🇼 экшен Шанхай 🇷🇺

@actionshanghai · Post #1004 · 29.04.2023 г., 14:01

FBI 局长称中国黑客数量五十倍于其网络工作人员数量 2023-04-29 21:08:00 by 机器岛 FBI 局长 Christopher Wray 称,中国黑客总数至少 50 倍于该部门的网络安全工作人员的数量。Wray 在为美国众议院拨款小组委员会预算听证会准备的发言中称,如果让 FBI 所有网络工作人员和情报分析师全都去监视到来自中国的网络威胁,那么中国黑客的数量仍然至少 50 倍于美国。FBI 正在申请 6300 万美元的预算去为其网络安全部门增加 192 个新职位。Wray 表示这有助于将更多工作人员派遣到靠近网络犯罪受害者的办事处。 https://it.slashdot.org/story/23/04/28/214202/chinese-hackers-outnumber-fbi-cyber-staff-50-to-1-bureau-director-says #Apache

Hashtags

Лёгкое небо

@legkoenebo · Post #4832 · 02.04.2026 г., 14:18

🫧Армия США расследует полёты «Апачей» над домом Кид Рока 📌Армия США начала расследование после того, как боевые вертолёты AH-64D Apache из 101-й бригады были сняты на видео кружащими над домом музыканта Кид Рока в Нэшвилле и летающими на низкой высоте возле протестующих в Кларксвилле. По документам вертолёты должны были выполнять учебный полёт 🔵Представитель армии заявил, что это не было санкционированным мероприятием и вертолёты не назначались для наблюдения за демонстрациями. Проводится административная проверка соблюдения правил полётов и требований воздушного пространства ⬅️Обещают принять меры в случае выявления нарушений Лёгкое небо #aviation#news#США#Apache

IT Events RU

@iteventsru · Post #239 · 27.02.2018 г., 16:13

✅ Завтра Основы In-Memory Computing для архитекторов и разработчиков. Часть 1 📅 28 февраля / 19:00 (время МСК) / онлайн 💵 Бесплатно 📝 Регистрация тут: https://goo.gl/h2Yvvo Денис Магда, Apache Ignite PMC Chair и директор по продукту в GridGain, расскажет об основных возможностях и компонентах In-Memory Computing решений на примере Apache Ignite. Вебинар совмещает теорию и практику, после него участники смогут проектировать и писать код под подобные системы. На конкретных примерах кода вы узнаете про: ~ Конфигурацию и запуск кластеров; ~ Обработку данных с использованием key-value API; ~ Оптимальную обработку данных с помощью распределенного SQL. 🔗 Программа: https://goo.gl/h2Yvvo #apache#ApacheIgnite#онлайн#online

IT Events RU

@iteventsru · Post #185 · 21.02.2018 г., 16:13

✅ Через неделю Основы In-Memory Computing для архитекторов и разработчиков. Часть 1 📅 28 февраля / 19:00 (время МСК) / онлайн 💵 Бесплатно 📝 Регистрация тут: https://goo.gl/AgNpma Денис Магда, Apache Ignite PMC Chair и директор по продукту в GridGain, расскажет об основных возможностях и компонентах In-Memory Computing решений на примере Apache Ignite. Вебинар совмещает теорию и практику, после него участники смогут проектировать и писать код под подобные системы. На конкретных примерах кода вы узнаете про: ~ Конфигурацию и запуск кластеров; ~ Обработку данных с использованием key-value API; ~ Оптимальную обработку данных с помощью распределенного SQL. 🔗 Программа: https://goo.gl/AgNpma #apache#ApacheIgnite#онлайн#online

IT Events RU

@iteventsru · Post #312 · 22.03.2018 г., 16:13

✅ Через неделю ✅ ANDROID MEETUP 📅 29 марта / 19:00–21:00 (время ЕКБ, МСК+2) / Екатеринбург, пер. Химков, 3, коворкинг Соль 💵 Бесплатно 📝 Регистрация тут: https://goo.gl/TyRRL6 Приглашаем вас к нам на митап, чтобы пообщаться, поделиться опытом и рассказать с какими задачами мы сталкиваемся, какие технологии используем и ,конечно, перетереть косточки Kotlin 🔗 Программа: https://goo.gl/TyRRL6 #android#Kotlin#Екатеринбург ✅ Epic Growth Conference 📅 29 марта / 14:00–22:00 (время МСК) / Москва, ул. 3-я Ямского Поля, 15 💵 Платно 📝 Регистрация тут: https://goo.gl/WEVQ6a 29 марта в Москве Mobio и Getloyal при поддержке партнеров организуют конференцию по продуктовому маркетингу Epic Growth Conference. 🔗 Программа: https://goo.gl/WEVQ6a #marketing#productivity#маркетинг#продукт#Москва ✅ Apache® Ignite™ Meetup #1 📅 29 марта / 19:00–22:00 (время МСК) / Санкт-Петербург, Невский проспект 35 💵 Бесплатно 📝 Регистрация тут: https://goo.gl/xsnDmZ Встреча для архитекторов и разработчиков, которые интересуются In-Memory решениями, в том числе open-source платформой Apache Ignite. 🔗 Программа: https://goo.gl/xsnDmZ #Apache#backend#СанктПетербург

IT Events RU

@iteventsru · Post #331 · 29.03.2018 г., 11:33

🔥 Сегодня 🔥 ANDROID MEETUP 📅 29 марта / 19:00–21:00 (время ЕКБ, МСК+2) / Екатеринбург, пер. Химков, 3, коворкинг Соль 💵 Бесплатно 📝 Регистрация тут: https://goo.gl/TyRRL6 Приглашаем вас к нам на митап, чтобы пообщаться, поделиться опытом и рассказать с какими задачами мы сталкиваемся, какие технологии используем и ,конечно, перетереть косточки Kotlin 🔗 Программа: https://goo.gl/TyRRL6 #android#Kotlin#Екатеринбург 🔥 SPB Frontend 📅 29 марта / 18:30–21:10 (время МСК) / Санкт-Петерберг 💵 Бесплатно 📝 Регистрация тут: https://goo.gl/CtZoJ7 Регулярные встречи по фронтенду. Обсуждаем javascript, вёрстку, анимацию и прочие приятности :) 🔗 Программа: https://goo.gl/CtZoJ7 #frontend#javascript#CSS#HTML#СанктПетербург 🔥 Epic Growth Conference 📅 29 марта / 14:00–22:00 (время МСК) / Москва, ул. 3-я Ямского Поля, 15 💵 Платно 📝 Регистрация тут: https://goo.gl/9wzDfT 29 марта в Москве Mobio и Getloyal при поддержке партнеров организуют конференцию по продуктовому маркетингу Epic Growth Conference. 🔗 Программа: https://goo.gl/9wzDfT #marketing#productivity#маркетинг#продукт#Москва 🔥 Apache® Ignite™ Meetup #1 📅 29 марта / 19:00–22:00 (время МСК) / Санкт-Петербург, Невский проспект 35 💵 Бесплатно 📝 Регистрация тут: https://goo.gl/MhRAdB Встреча для архитекторов и разработчиков, которые интересуются In-Memory решениями, в том числе open-source платформой Apache Ignite. 🔗 Программа: https://goo.gl/MhRAdB #Apache#backend#СанктПетербург 🔥 C++ Drink Up 📅 29 марта / 19:00–23:00 / Москва, Guns & Bears Pub, Новослободская ул. д.46 💵 Бесплатно 📝 Регистрация тут: https://goo.gl/bMa7cr В неформальной обстановке с удовольствием встретимся с единомышленниками и поговорим за кружкой пенного. Присоединяйся ;) 🔗 Программа: https://goo.gl/bMa7cr #C#cPlusPlus#Москва

IT Events RU

@iteventsru · Post #330 · 28.03.2018 г., 16:13

✅Завтра ✅ ANDROID MEETUP 📅 29 марта / 19:00–21:00 (время ЕКБ, МСК+2) / Екатеринбург, пер. Химков, 3, коворкинг Соль 💵 Бесплатно 📝 Регистрация тут: https://goo.gl/TyRRL6 Приглашаем вас к нам на митап, чтобы пообщаться, поделиться опытом и рассказать с какими задачами мы сталкиваемся, какие технологии используем и ,конечно, перетереть косточки Kotlin 🔗 Программа: https://goo.gl/TyRRL6 #android#Kotlin#Екатеринбург ✅ Epic Growth Conference 📅 29 марта / 14:00–22:00 (время МСК) / Москва, ул. 3-я Ямского Поля, 15 💵 Платно 📝 Регистрация тут: https://goo.gl/UNfo9E 29 марта в Москве Mobio и Getloyal при поддержке партнеров организуют конференцию по продуктовому маркетингу Epic Growth Conference. 🔗 Программа: https://goo.gl/UNfo9E #marketing#productivity#маркетинг#продукт#Москва ✅ SPB Frontend 📅 29 марта / 18:30–21:10 (время МСК) / Санкт-Петерберг 💵 Бесплатно 📝 Регистрация тут: https://goo.gl/CtZoJ7 Регулярные встречи по фронтенду. Обсуждаем javascript, вёрстку, анимацию и прочие приятности :) 🔗 Программа: https://goo.gl/CtZoJ7 #frontend#javascript#CSS#HTML#СанктПетербург ✅ Apache® Ignite™ Meetup #1 📅 29 марта / 19:00–22:00 (время МСК) / Санкт-Петербург, Невский проспект 35 💵 Бесплатно 📝 Регистрация тут: https://goo.gl/we9aK3 Встреча для архитекторов и разработчиков, которые интересуются In-Memory решениями, в том числе open-source платформой Apache Ignite. 🔗 Программа: https://goo.gl/we9aK3 #Apache#backend#СанктПетербург ✅ Код ИБ 📅 29 марта / 10:00–18:00 (время МСК) / Краснодар, ул. Красных Партизан 181 + онлайн 💵 Платно 📝 Регистрация тут: https://goo.gl/jcwvEB Код ИБ — самая масштабная конференция по кибербезопасности. Эксперты обсудят ключевые темы отрасли: тренды, технологии, управление ИБ, а также возможные решения наболевших проблем. 🔗 Программа: https://goo.gl/jcwvEB #security # #informationsecurity#Краснодар ✅ C++ Drink Up 📅 29 марта / 19:00–23:00 / Москва, Guns & Bears Pub, Новослободская ул. д.46 💵 Бесплатно 📝 Регистрация тут: https://goo.gl/LZwYp8 В неформальной обстановке с удовольствием встретимся с единомышленниками и поговорим за кружкой пенного. Присоединяйся ;) 🔗 Программа: https://goo.gl/LZwYp8 #C#cPlusPlus#Москва

Repositorio data science

@repo_science · Post #3109 · 28.04.2023 г., 17:58

#datascientist#datascience#datasciencejobs#dataanalysis#data#dataanalyst#dataanalytics#dataanalystjobs#analytics#python#pythonprogramming#rprogramming#sql#excel#statistics#testing#softwaretesting#projects#projectmanagement#agile#computerscience#programming#webdevelopment#softwaredevelopment#roadmap#visualization#learningeveryday#learning#tutorials#learntocode#apache#powerbi#tableau#machinelearning#ml#ai#artficialintelligence#deeplearning#bigdata#bigdataanalytics#algorithms#mathematics#datastructures#kaggle#nlp#reinforcementlearning#sql#nosql#databases#mongodb ----- Canal principal:@repo_science Cupones: @freecoupons_reposcience -----