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 слични објави

Пребарај: #clarinet

当前筛选 #clarinet清除筛选
Google Facts™ [ ️@googlefactss🌎]

@googlefactss · Post #40537 · 14.01.2026 г., 05:03

The clarinet was invented on January 14, 1690, by Johann Christoph Denner in Nuremberg, Germany. It came from an older instrument called the chalumeau. Denner added two keys to make it play more notes. Mozart was the first composer to use the clarinet in a symphony. The name "clarinet" may come from "clarini," referring to its ability to play fast and high notes that trumpets could not. 🎶🎷 [Read more] @googlefactss #Clarinet#MusicHistory#JohannChristophDenner#Mozart#Instruments

PENDJARI SHOWCASE

@pendjarimusique · Post #749 · 12.12.2025 г., 10:42

🎵 OUT NOW: EP «Clarinet» от Cabassa Основатель Pendjari Showcase выпустил новый EP на лейбле Afrokhin! Треки: · Clarinet · Kiroko Жанр: Afro House Добавляйте в плейлисты, делитесь в сторис и слушайте первыми — музыка, которая заряжает. https://go.protonradio.com/r/rlHMgTxBy9S7k #Cabassa#Clarinet#AfroHouse#PendjariShowcase#НовыйРелиз

Tibicen

@world_music_geek · Post #450 · 26.10.2023 г., 08:02

Wannes Raps — Brabantse Folk (Stoof, 1978) #traditional#accordion#draailier#clarinet#bagpipes#guitar#mandolin#Belgium Wannes Raps — бельгийская фолк-группа, названная в честь романа 1926 года фламандского писателя Эрнеста Клаеса. Во время Гентских праздников 1973 года они впервые выступили с традиционным фламандским репертуаром. В 1970-е годы, выпустив свой первый альбом, группа стала особенно популярной в Брабанте и Фландрии. В своем раннем творчестве они уделяли большое внимание музыкальному аспекту народных песен и танцевальному материалу. Telegram | VK

Tibicen

@world_music_geek · Post #664 · 08.07.2024 г., 12:04

Various Artists — Songs About Greeks Far From Home (Domna Samiou Greek Folk Music Association, 1989) #traditional#oud#lyre#lute#clarinet#toubeleki#violin#Greece Альбом Songs About Greeks Far From Home представляет собой сборник народных песен, отражающих исторические и культурные аспекты миграции греков, начавшейся еще во времена древнегреческой колонизации островов Эгейского моря и побережья Малой Азии. На примере этого альбома видно, как тема тоски по дому проникла в греческую культуру и стала неотъемлемой частью народного творчества. Тексты и музыка были собраны в различных уголках исторической Греции. Они позволяют представить, какое разнообразие традиций и музыкальных стилей сегодня исполняется греческой диаспорой. Например, песня «Мама, ты ругаешь меня слишком много (Μάνα πολλά μαλώνεις με)» исполнена в критском стиле и рассказывает о боли матери, вынужденной отпустить своего сына на чужбину. Понтийская песня «Критский корабль (Ένα καράβι κρητικό)» описывает трудности и опасности, с которыми сталкиваются мигранты на чужой земле. В то же время в ней слышно ритмическое и мелодическое влияние Кавказа. Известная исполнительница Домна Самиу (Δόμνα Σαμίου), которая посвятила свою жизнь сохранению и популяризации греческой народной музыки, стала куратором этого проекта и исполнила часть песен на альбоме. В работе над подготовкой этнографического материала ей также помогал музыковед Ламброс Лиавас (Λάμπρος Λιάβας), профессор этномузыкологии и культурной антропологии. 🔗 Spotify | AppleMusic | Domna Samiou

Tibicen

@world_music_geek · Post #1029 · 15.08.2025 г., 19:02

Singers and Ensembles of Radio Ankara — Songs and Dances of Turkey (Monitor Records, 1996) #traditional#baglama#clarinet#darabukka#fiddle#kaval#kemenche#saz#spoons#zeybek#tamzara#Turkey Перед нами — энциклопедия турецкой народной музыки, собранная силами Радио Анкары. Турецкая музыкальная традиция вобрала в себя наследие Центральной Азии, Кавказа и десятков народов, прошедших через Анатолию за тысячелетия. В ней легко узнать и античные дорийский, эолийский и фригийский лады, и модернизированную персидскую микротональную традицию, и древние степные напевы. На записи представлены регионы от восточного Карса, некогда столицы армянского царства, до суфийской Конии в центре страны; от горного Адыямана на юго-востоке до равнинных областей Анатолии. Здесь звучат степенные героические зейбеки (zeybek), звонкий «ложечный» кащик-хавасы (kaşık havası) и круговая тамзара (Թամզարա) — традиционный кавказско-анатолийский танец. Короче говоря, этот проект Радио Анкары соединяет разрозненные голоса и ритмы в целостную звуковую картину Турции. 🔗Spotify | AppleMusic | Telegram

Tibicen

@world_music_geek · Post #768 · 03.10.2024 г., 08:00

Various Artists — Folk Music of Pakistan (Folkways Records, 1951) #traditional#alghoza#bansuri#bagpipe#clarinet#dholak#dilo#duff#ghatam#mandolin#sarinda#sitar#tabla#tambura#Bangladesh#Pakistan Пакистан образовался в 1947 году после разделения Британской Индии на два государстваː индуистское, Индийский Союз, и мусульманское, Доминион Пакистан. Бангладеш, ранее известный как Восточный Пакситан, приобрёл автономность в 1971 году в результате войны за независимость. Композиции из разных регионов обеих современных стран представлены на этой записи 1951 года. Например, на ней можно услышать песню бангладешских лодочников «бхатиали» (ভাটিয়ালি) или пуштунскую любовную песню из Хайбер-Пахтунхва. Важно отметить, что некоторые названия, упомянутые в названиях песен, изменились с момента создания этих записей. Например, провинция Хайбер-Пахтунхва (Khyber Pakhtunkhwa) в 1951 году носила имя Северо-Западная пограничная провинция (Northwest Frontier Province). 🔗Spotify | AppleMusic

Tibicen

@world_music_geek · Post #776 · 10.10.2024 г., 10:00

Various Artists — Songs and Dances of Yugoslavia (Folkways Records, 1951) #traditional#accordion#clarinet#fiddle#kaval#tambura#tamburica#violin#gusle#tamburica#Serbia#Bosnia_and_Herzegovina#Montenegro#Croatia#Macedonia#Slovenia#Yugoslavia В 1951 году музыковед Лора Болтон записала традиционную музыку из всех шести республик бывшей Югославии — Сербии (треки 2, 3, 9, 10, 11 и 13), Македонии (треки 7 и 15), Боснии и Герцеговины (треки 1, 4 и 12), Черногории (трек 8), Хорватии (треки 5 и 6) и Словении (трек 14). На её пластинке представлены вокальные композиции, оркестровые произведения и записи балканских народных инструментов, таких как гусле и тамбурица. 🔗Spotify | AppleMusic

Tibicen

@world_music_geek · Post #740 · 03.09.2024 г., 09:05

Инструменты #accordion#afoxe#agaita#apapshyn#apapshyn#baglama#baglamas#bagpipes#bajo_sexto#bandoneon#banjo#bansuri#barbat#berimbau#bouzouki#brass#bulbul_tarang#cabrette#calabash#chabrette#chanzy#cimbalom#clarinet#conga#daf#dam#damaru#dambura#dhol#dholak#dilruba#djembe#dombra#doshpuluur#draailier#duduk#dulcimer#dunggur#dut#dutar#epinette#epinette_des_vosges#erhu#flute#gabusi#gayageum#geomungo#ghatam#ghaychak#goje#gong#granular_synthesis#gubguba#guembri#guitar#guzheng#gwo_ka#gyil#harmonium#harp#hurdy_gurdy#igil#irawk#kamanche#kamyl#kangling#kanjira#kanyeri#kayamb#kemenche#kendhang#khomus#kobyz#kologo#komuz#kora#lag_na#lamellophone#lute#lyre#malimba#mandola#mandolin#mandoloncelle#marimba#marranzano#mbira#musical_bow#nay#ney#ngombi#ngoni#nyckelharpa#ocarina#organetto#oud#piano#pifres#premtal#pungi#qraqebs#rebab#rolmo#rubab#sanfonha#sanfonha#santur#sarangi#sarod#setar#shakuhachi#shang#shychepshyn#sildyen#silnyen#sintir#sitar#soku#sring#synth#tabla#talking_drum#tambours#tambura#tanbur#tanpura#tar#tende#thavil#theremin#tindi#tingsha#tombak#tombi#toubeleki#trombone#trumpet#tuba#tumbi#tzouras#vibraphone#viola#violin#water_drum#xylophone#zerbaghali#zither#zurna#сhabreta