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

Резултати

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

Пребарај: #kongsberg

当前筛选 #kongsberg清除筛选
Ukrainian Military Pages

@ukrmilitary · Post #7347 · 01.07.2023 г., 14:06

​Норвезька компанія #Kongsberg Defense & Aerospace презентувала мобільну систему протиповітряної оборони малої дальності #NASAMS для сухопутних військ https://www.ukrmilitary.com/2023/07/kongsberg-nasams.html

Вестник NATO

@nato_rus · Post #1764 · 20.09.2024 г., 13:02

Вслед за постройкой нового завода в Вирджинии Kongsberg Defence & Aerospace расширяет завод в Пенсильвании. Норвежская компания Kongsberg Defence & Aerospace, приняла решение инвестировать дополнительно 10 млн.$ в расширение своих производственных мощностей на одном из заводов в Пенсильвании. Завод занимается производством боевых модулей с удалённым управлением. Компания дополнительно привлечёт 20 сотрудников и улучшит инфраструктуру. Завод является самым большим в компании Kongsberg за пределами Норвегии. На нём трудится 220 работников и начиная с 2008 года было произведено более 20 000 боевых модулей. #Норвегия#США#Kongsberg#Промышленность Вестник NATO

Вестник NATO

@nato_rus · Post #1744 · 19.09.2024 г., 01:01

Компания Kongsberg объявила о строительстве в округе Джеймс-Сити штата Вирджиния завода по производству ракет NSM и JSM. Строительство завода в США знаменует очередную инвестицию компании в производство ракет следом за объявлением о строительстве нового предприятия в Австралии. У компании в планах также расширение своего производства в Джонстауне, штат Пенсильвания. #Норвегия#США#Kongsberg#Промышленность Вестник NATO

Ukrainian Military Pages

@ukrmilitary · Post #7931 · 05.10.2024 г., 15:46

​Міністерство національної оборони Литовської Республіки підписало контракт з #KONGSBERG на постачання додаткових систем #ППО NASAMS // #литва https://www.ukrmilitary.com/2024/10/kongsberg-nasams.html

🚢Kongsberg Maritime оснастит новейшими системами новый полярный круизный лайнер "Scenic Ikon". Норвежская Kongsberg Maritime получила контракт от MKM Yachts на поставку комплексного оборудования для экспедиционного лайнера "Scenic Ikon", строящегося для компании Scenic Cruise. Судно длиной 203 метра - будет оснащено гибридной электрической установкой и движителями Elegance Pods, обеспечивающими низкий уровень шума, высокую эффективность и манёвренность, что позволит работать с нулевыми выбросами в экологически чувствительных районах мира. С операционной точки зрения, проект отражает переход круизной индустрии к высокотехнологичным решениям с интеграцией энергетических систем, автоматизации и навигации, включая динамическое позиционирование и системы управления энергией. Для рынка это подтверждает рост спроса на экологичные экспедиционные суда, где технологическая оснащённость становится ключевым конкурентным фактором. 📌Kongsberg Maritime AS — основана в 1814 году (как часть группы Kongsberg), один из ведущих мировых поставщиков морских технологий; входит в норвежскую группу Kongsberg Gruppen, контролируемую государством Норвегии. #Cruise#Shipping#Technology#Decarbonization#Kongsberg

⚡️Пољска/Литванија — потпредседник Владе и МО Иван Анушић обилази хрватске трупе које се налазе у оквиру снага истуреног NATO копненог присуства #бројке у Пољској је распоређен 17. хрватски контингент са 50 припадника, од којих је 7 жена. Део се налази и у Литванији. #формација У борбеној групи под вођством САД делују и снаге У.Краљевства и Румуније, уз ојачање 15. механизоване бригаде оружаних снага Пољске као земље домаћина. #фото Patria AMV хв 8x8 са ДУБС "Kongsberg" #март_2026 → Извор: /t.me/borbeni_efektivi → Линк: /t.me/borbeni_efektivi 🪖#Пољска〣#Литванија〣#Хрватска〣#NATO〣#Иван_Анушић〣#Patria_AMV〣#Kongsberg〣#копнена_војска 🇷🇸https://t.me/borbeni_efektivi