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

Пребарај: #gustavopetro

当前筛选 #gustavopetro清除筛选
Venezuelanalysis

@venanalysis · Post #2039 · 25.07.2025 г., 20:35

📰 NEWS | Maduro Confirms Sale of Venezuelan Fertilizer Firm Monómeros to Colombia, Ending Privatization Rumors Venezuelan and Colombian authorities are engaged in talks for the sale of agrochemical producer Monómeros. A confidential agreement reportedly set a base price. The firm, which had a tumultuous time under Venezuelan opposition management, is set to be purchased by the Colombian state as the Petro government aims to maintain stability in the agricultural inputs market. Read our report: https://venezuelanalysis.com/news/maduro-confirms-sale-of-venezuelan-fertilizer-firm-monomeros-to-colombia-ending-privatization-rumors/ #Monomeros#Fertilizer#Venezuela#GustavoPetro

Venezuelanalysis

@venanalysis · Post #1810 · 19.11.2024 г., 21:22

Colombia’s corporate watchdog has stepped in to oversee Monómeros, the Venezuelan state-owned agrochemical firm, as concerns grow over a potential sale. President Petro opposes privatization plans, citing risks to the agricultural sector. Read the full report here: https://shorturl.at/KAezV #colombiavenezuelarelations #gustavopetro#monómeros#monomeros

Crypto M - Crypto News

@CryptoM · Post #64736 · 09.04.2026 г., 16:48

🚀 Colombia Limits Pension Funds' Overseas Investments to Boost Local Economy Colombia has announced a new policy to cap pension funds' overseas investments at 30%, a decision supported by President Gustavo Petro. Bloomberg posted on X, highlighting that this move is intended to stimulate domestic economic growth by redirecting billions of dollars into local assets. The policy aims to strengthen the country's financial markets and encourage investment within Colombia, potentially leading to increased economic stability and development. #Colombia#PensionFunds#OverseasInvestments#LocalEconomy#EconomicGrowth#FinancialMarkets#Investment#GustavoPetro#EconomicPolicy#Development

Crypto M - Crypto News

@CryptoM · Post #65077 · 10.04.2026 г., 20:08

🚀 Colombia to Implement 100% Tariffs on Ecuadorian Imports Amid Diplomatic Strain Colombia has announced plans to impose 100% tariffs on imports from Ecuador, escalating trade and diplomatic tensions between the two nations. Bloomberg posted on X, highlighting the growing discord between Colombian President Gustavo Petro and Ecuadorian President Daniel Noboa. The decision marks a significant shift in the trade relationship between the neighboring countries, potentially impacting economic ties and regional cooperation. The move comes amid broader geopolitical challenges in the region, with both leaders navigating complex domestic and international pressures. The tariff imposition is expected to affect various sectors, including agriculture and manufacturing, as businesses and consumers brace for potential disruptions. Observers are closely monitoring the situation, anticipating further developments in the diplomatic standoff. #Colombia#Ecuador#Tariffs#TradeWar#DiplomaticTensions#GustavoPetro#DanielNoboa#EconomicImpact#RegionalCooperation#Agriculture#Manufacturing