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

Резултати

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

Пребарај: #drums

当前筛选 #drums清除筛选
Wigwam Wallet Announcements

@wigwam_announcements · Post #72 · 07.06.2024 г., 12:06

🎉WOW! What an incredible achievement!🎉 We've reached 500,000 players and 100,000 Twitter followers! 🌟 You are the best tribe in the world! 🥁 Let's keep this celebration going! Don't stop, enjoy the rhythms of your drums https://t.me/@drumtap_bot, and collect #DRUMs! 🔥🪘

Hashtags

Есть такая фишка - заниматься под миксы с выключенными барабанами. На ютубе полно таких композиций. В поиске вводите жанр, темп и drumless. Например, сегодня я набрал "drumless funk 136 bpm", и первой же вылезла вот эта вещь. Включил камеру, и погнали! Ссылка на оригинал без барабанов: https://www.youtube.com/watch?v=UaDC2i-G… #drums#funk

Hashtags

Venezuelanalysis

@venanalysis · Post #1619 · 26.06.2024 г., 22:01

Delegations from 14 countries attended the ‘ALBA Drums’ event in Caracas to showcase varied percussion expressions and the African heritage in the region's culture. The gathering featured debates, workshops and musical performances. Check out our gallery: https://venezuelanalysis.com/images/venezuela-hosts-alba-drums-gathering-to-celebrate-african-heritage/ #Drums#AfricanDiaspora#Culture#AfricanHeritage

TASTE OF AFRICA🌞

@taste_of_africa · Post #64 · 09.02.2026 г., 04:11

🗣️🎶 Taste of Africa: Язык и музыка 🌟🔔 «Ритмическое путешествие продолжается!» 🥁🌟 Когда речь становится ритмом, а мелодия — смыслом 🥁 В Африке язык и музыка часто звучат как единое целое, и это ощущается даже при первом знакомстве. В ряде языков региона (например, Yorùbá, Igbo и многих других) значение передают и слоги, и высота произнесения. 📌 Тональные языки используют тон (высоту голоса) для различения значений. Одна и та же последовательность звуков, произнесённая выше или ниже (или с другим контуром), передаёт другое слово. Ключевая мысль рубрики: 🎼 в песне мелодия работает как часть смысла и помогает ему звучать точно. 🎤 1) Как язык задаёт форму вокалу Тональная речь направляет вокальную линию к смысловой точности, поэтому в музыке часто встречаются такие решения: 🗣️ Вокал как речь: мелодия держится в узком диапазоне, звучит как разговор, уложенный в ритмический узор. 🔁 Хуки‑формулы: важная фраза повторяется, смысл закрепляется и становится общим. 👥 Call-and-response (вопрос–ответ): лидер произносит строку → хор отвечает и поддерживает. Формат создаёт ощущение общинного согласия: “мы услышали, мы повторили, мы поняли”. 🥁 2) Барабаны как продолжение языка Связь языка и музыки проявляется и через ритм речи. У каждой этнической традиции формируется свой набор привычек: ⏱️ акценты ✂️ паузы 📌 группировки слогов ⚡ ускорения и “перебросы” 🥁 Барабанные рисунки часто отражают эти принципы: ритм становится моделью речи. Поэтому в ансамблях барабаны звучат как участники диалога: отвечают голосу “репликой”, поддерживают ключевую фразу, закрепляют смысл повтором, в ряде традиций передают сообщения и статус через говорящие барабаны и кодированные сигналы. 🎧 Как услышать это в треке: представьте вокальную строку как фразу, произнесённую вслух. Когда перкуссия попадает в те же акценты, возникает ощущение разговора внутри музыки. 🌍 3) Кого послушать сегодня (по странам) 🎶 Под тему отлично подходят артисты, у которых композиция строится на риторике, повторе, коллективном ответе и “говорящем” груве. 🇳🇬 Нигерия • Fela Kuti — длинная музыкальная “речь” поверх гипнотического грува 🔥 fela-kuti.bandcamp.com • Seun Kuti & Egypt 80 — лозунг‑фраза ↔ ответ, энергия сообщества 👥 seunkuti.bandcamp.com 🇬🇭 Гана • Ebo Taylor — highlife/afro-funk, где риффы звучат как реплики 🎸 ebotaylor.bandcamp.com • Gyedu-Blay Ambolley — речевой фанк/highlife 🗣️ gyedublayambolley.bandcamp.com 🇸🇳 Сенегал • Orchestra Baobab — ансамбль как разговор: слои ответов и мягкий грув 🧵 orchestrabaobab.bandcamp.com 🇲🇱 Мали • Ali Farka Touré — фразировка как интонация речи, музыка “рассказывает” 🌀 alifarkatoure.bandcamp.com • Tinariwen — сила повтора и коллективного звучания 🌙 tinariwen.bandcamp.com 🇬🇳 Гвинея • Bembeya Jazz National — городская оркестровая традиция, где ритм держит “сюжет” 🎺 bembeyajazznational.bandcamp.com 🇪🇹 Эфиопия • Mulatu Astatke — этно‑джаз: интонации и паузы как пунктуация 🎷 mulatuastatke.bandcamp.com 🇿🇦 ЮАР • Hugh Masekela — инструмент “говорит”: вопрос–ответ, паузы, реплики 🗣️🎺 hughmasakela.bandcamp.com 🇹🇿 Танзания • Siti Muharam — суахили‑песня: текст и интонация ведут аранжировку ✨ sitimuharam.bandcamp.com 🎧 4) Мини‑упражнение (2 минуты) Выберите любой трек из списка и отметьте: 🎤 где вокал поёт, а где говорит/скандирует 🔁 какие фразы повторяются как “формулы” 🥁 где ритм‑секция отвечает голосу — как подтверждение смысла 🔄 Сохраняйте пост и приглашайте друзей в наше увлекательное путешествие вокруг света африканских ритмов!🎶🌍 #TasteOfAfrica#ЯзыкиАфрики#ЯзыкИМузыка#АфриканскаяМузыка#ТональныеЯзыки#Этномузыка#WorldMusic#AfricanRhythms#Drums#TalkingDrum#Djembe#CallAndResponse#Afrobeat#Highlife#AfroJazz#WestAfrica#EastAfrica#SouthAfrica#Nigeria#Ghana#Senegal#Mali#Guinea#Ethiopia#Tanzania#FelaKuti#SeunKuti#EboTaylor#OrchestraBaobab#AliFarkaToure#Tinariwen#MulatuAstatke#HughMasekela#SitiMuharam