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

Резултати

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

Пребарај: #economicchallenges

当前筛选 #economicchallenges清除筛选
Crypto M - Crypto News

@CryptoM · Post #64574 · 09.04.2026 г., 08:47

🚀 Turkey's Finance Minister: Inflation Outlook Worsens Turkey's Finance Minister has indicated that the country's inflation outlook has deteriorated to some extent. According to Jin10, this statement highlights growing concerns over economic stability in Turkey. The minister's remarks come amid ongoing challenges in managing inflationary pressures, which have been a persistent issue for the Turkish economy. The government is likely to face increased scrutiny as it seeks to implement measures to address these economic challenges. #Turkey#FinanceMinister#Inflation#Economy#EconomicStability#InflationPressure#EconomicChallenges

Crypto M - Crypto News

@CryptoM · Post #65302 · 12.04.2026 г., 16:31

🚀 Global Economic Unity Faces Challenges Amid Iran Conflict and Energy Crisis For decades, global economic crises have prompted the world to band together. Bloomberg posted on X, highlighting that today, as central bankers and heads of state contemplate the potential fallout from the Iran war and the biggest energy crunch in half a century, it looks increasingly unlikely there’ll be another spurt of unified action. The complexities of the current geopolitical landscape, coupled with the unprecedented energy challenges, are testing the limits of international cooperation. As nations grapple with these issues, the prospect of coordinated global economic strategies appears dimmer than in previous crises. #GlobalEconomy#IranConflict#EnergyCrisis#Geopolitics#InternationalCooperation#EconomicChallenges#CentralBanking#GlobalCrisis

Crypto M - Crypto News

@CryptoM · Post #64547 · 09.04.2026 г., 07:17

🚀 World Bank Projects India's Current Account Deficit to Rise by 2027 The World Bank has projected that India's current account deficit will increase to 1.8% of its GDP by the fiscal year 2027. According to Jin10, this anticipated rise is attributed to the growing energy import bills that India is expected to face. The World Bank's forecast highlights the potential economic challenges India may encounter due to its reliance on energy imports, which could impact its overall economic stability in the coming years. #WorldBank#India#CurrentAccountDeficit#EnergyImports#EconomicChallenges#GDP#FiscalYear2027#EconomicStability

Crypto M - Crypto News

@CryptoM · Post #64586 · 09.04.2026 г., 09:18

🚀 Europe Faces Economic Challenges Amid Ceasefire in Iran Europe continues to grapple with the threat of low growth and rising inflation, despite the recent ceasefire in Iran, according to the European Union’s top economy official. Bloomberg posted on X, highlighting concerns over the region's economic stability. The official emphasized that while geopolitical tensions have eased, the economic outlook remains uncertain. The EU is closely monitoring the situation, as persistent inflation and sluggish growth could impact the broader European economy. Policymakers are urged to remain vigilant and responsive to these ongoing challenges. #Europe#EconomicChallenges#Inflation#Growth#Ceasefire#Iran#EuropeanUnion#GeopoliticalTensions#EconomicStability#Policymakers#EU

Crypto M - Crypto News

@CryptoM · Post #64889 · 10.04.2026 г., 07:11

🚀 Japan Urged to Reevaluate Spending on Social Programs Japan is being advised to reassess its financial commitments to programs supporting women, environmental initiatives, and foreign nationals. Bloomberg posted on X, highlighting a summary of responses from a recent government survey. The survey suggests that these areas may require a strategic review to ensure effective allocation of resources. The call for reevaluation comes amid broader discussions on optimizing government spending to address pressing national priorities. The survey's findings could influence future policy decisions as Japan navigates its economic and social challenges. #Japan#SocialPrograms#GovernmentSpending#Women#Environment#ForeignNationals#PolicyReview#EconomicChallenges#SocialPolicy