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

Резултати

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

Пребарај: #instrumental

当前筛选 #instrumental清除筛选
Masala Quartet

@masalaquartet · Post #208 · 08.02.2026 г., 11:49

Москва ● Склад №3 ● 22.02 (Вс) ● 19:00 #jazz#freejazz#improv#experimental#instrumental ► Petyaev-Petyaev — 10 лет ● VK Юбилей главных фри-джазовых амбассадоров откроют лучшие представители импров-сцены — задорные The RIG и мелодичные Masala Quartet. Наш праздник — это отличная возможность послушать современный джаз в уютной дружеской атмосфере Участники: ► Petyaev-Petyaev ● TG ● VK ► The RIG ● TG ● VK ► Masala Quartet ● TG ● VK Билеты от 800₽ Скидка для подписчиков ► INTOTHEVOID

AWTH

@wall_amv · Post #9139 · 12.06.2024 г., 18:56

Anime: In Spectre, Raise a Suilen, Death end re Quest 2, Kritika Online, Ar nosurge Ode to an Unborn Star, Date A Live IV, English - Japanese, Food War, Hibana, Shiny Girl, Psycho-Pass Sinners of the System Case 2, Tomodachi Game, Love and Lies, Intergalactic Bound, ClariS Careless Music: Smash Into Pieces - Heroes Are Calling #Amv #Amv_Mix #Mix #Dance #Action #Sentimental #Instrumental #MEP #Big_Contest_2024 #AnimWorld @Wall_Amv

AWTH

@wall_amv · Post #8746 · 20.04.2024 г., 19:58

Anime: Naruto, Boku no Hero, Chainsaw Man, Jujutsu Kaisen, +Others Music: Phaseone - Crash & Burn ft. Northlane Awards: 1st Place Runner Contest 2023 #Amv #Amv_Mix #Mix #Action #Psychedelic #Story #Cross_Over #Instrumental #HD #پیشنهاد_ویژه #AnimWorld @Wall_Amv

KULT LAB

@kultlaba · Post #8394 · 21.02.2026 г., 09:01

#Electronic#Instrumental #Brainfeeder#New Кстати, Fly Lo анонсировал выход своего нового EP «BIG MAMA». Материал записан на просторах Средиземья и скорее всего в Ривенделле в Новой Зеландии во время работы над режиссерским дебютом Лотуса "Пепел". Гостей на ипишке не обещают или просто не раскрывают. Напоминаю, что крайний релиз «Spirit Box», не считая «ASH (OST)», Flying Lotus выпускал в прошлом году, активно заигрывая на нём с танцевальным хип-хаусом конца 80-х. Вангую сингл с предстоящего мини-альбома уже в пятницу. И это мы ждём-с. Искреннее ваш, #DonnyCollymbus#soulsfm

Punk Fiction

@punkfictionbar · Post #5114 · 15.01.2026 г., 15:02

Москва ● Punk Fiction ● 15.01 (Чт) ● 20:00 #avantgarde#electronic#hiphop#instrumental#progressive#psychedelic ► Вечеринка в Гетто ● VK Наш ежегодный мега-праздник в честь двух именинников и виртуозов баса – Мишани и Колюни! Участники: ► IWKC ● TG ● VK ► Detieti ● TG ● VK ► Dj Жмерек ● VK Заплати любую сумму

Лизинг. Впервые это понятие пришло ко мне не из сферы автомобилей. Пришло из музыки. Это когда человек написал инструментал и даёт его погонять разным исполнителям. Русским, американским. А если это делает сибиряк, то это Рома Cvpellv. Он открылся для меня в томской группе "Забытый полк". Затем появилось объединение Diamond Style Production (DSP). Оказалось, что наши продюсеры и битмейкеры могут делать музыку, которая одинаково хорошо звучит и с русскими, и с английскими куплетами поверх. Не важно, Kristina Si это или Freddie Gibbs. Рома Capella — человек, который может сказать: "сидел я как-то со Снуп Догом на студии...", — и это будет не понтами, а обычной историей из жизни. Вообще интересно посмотреть за профессией битмейкер. Вот один из выпусков "По классике" с Ромой. Рома уникум. Может органично звучать в рэпе, электронщине. Отдельное удовольствие то, как на его биты начинает звучать наша попса. Ну и лайвы на akai mpc, конечно, удивительно заходят даже мне, который всегда был за текстоцентричность. #cvpellv#capella#биты#заполк#dsp#плейлист#электро#instrumental#внк Вопросик на контроле

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