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

Пребарај: #cdp

当前筛选 #cdp清除筛选
Ultimora.net - POLITICS

@Ultimorapolitics · Post #38156 · 02.05.2022 г., 14:07

#Polonia Un gruppo di parlamentari e senatori hanno annunciato la formazione di un nuovo partito chiamato "Centrum dla Polski"/#CdP, che farà parte della coalizione guidata dal #PSL|EPP. Il partito, che si prefissa ideologicamente come liberal-conservatore e democristiano, dovrebbe comprendere alcuni ex membri dell'ala conservatrice del #PO|EPP espulsi nel corso degli anni. In foto il logo del partito. @UltimoraPolitics

Ultimora.net - POLITICS 24

@Ultimorapolitics24 · Post #51871 · 08.02.2026 г., 12:11

🇯🇵 Elezioni #Giappone – Disastro dell’Alleanza Centrista Riformista(#CRA). Il partito di centrosinistra #CDP aveva puntato su un’alleanza con #Komeito, partito ispirato al buddismo riformista ed ex alleato di governo del #LDP fino allo scorso anno. La coalizione sta perdendo tutti i collegi uninominali e rischia di fermarsi a circa 50 seggi, quasi tutti ottenuti dal proporzionale. @UltimoraPolitics24

Avianca стала единственной авиакомпанией в Латинской Америке, которая получила награду от Carbon Disclosure Project (CDP) – пятый год подряд сохраняя рейтинг "B" в области экологии. Ключевые результаты за 2024: ▪️ Снижение абсолютных выбросов CO₂ на 7% по сравнению с 2019, несмотря на рост пассажиропотока на 24%. ▪️ Интенсивность выбросов на пассажиро-километр (RPK) уменьшилась на 20%. ▪️ Более 40 лайнеров A320neo и грузовой A330F снижает расход топлива примерно на 20%. Управление отходами ✔️Снижение отходов на 27% на ключевых объектах; ✔️Увеличение уровня переработки с 43% до 49%, благодаря эко-партнёрствам и пересмотру сервиса на борту. Охрана экосистем • Перевозка 19 тонн отходов с Галапагос и 3 тонн с Летисии в Кито и Боготу. • Новый проект: до 3 тонн ежемесячных перевозок отходов с островов Сан-Андрес и Провиденсия. «Пятый год подряд рейтинг B подтверждает, что мы движемся в правильном направлении. Продолжим обеспечивать эффективные и социально ответственные перевозки» — отметил Фелипе Гомес, вицепрезидент по корпоративным делам и устойчивому развитию. Avianca демонстрирует, что авиация может масштабировать бизнес, одновременно снижая экослед. Их шаги — пример устойчивого развития для отрасли. #Avianca#УстойчивоеРазвитие#CDP#Экология#GreenAviation#LatAm#Новости#Авиаперевозки 👉Всегда свежие новости о странах Латинской Америки!

Ultimora.net - POLITICS 24

@Ultimorapolitics24 · Post #51724 · 22.01.2026 г., 19:44

🇯🇵#Giappone – A poche settimane dalle elezioni anticipate, il Partito Democratico Costituzionale (#CDP, centrosinistra) e #Komeito (centristi ispirati al buddismo riformista, al governo con il #LDP fino allo scorso anno) si sono alleati in Parlamento e alle elezioni, creando così l’Alleanza Centrista Riformista (#CRA), con l’obiettivo di sconfiggere la premier Sanae #Takaichi e il Partito Liberal Democratico. Oggi si è tenuta la prima convenzione dell'alleanza. @UltimoraPolitics24

Ultimora.net - POLITICS

@Ultimorapolitics · Post #37671 · 26.04.2022 г., 21:01

#Sondaggi#Giappone Sondaggio di Nikkei: Scenario: quale partito sostieni #LDP|Centro-destra: 48% (-1) #CDP|Centro-sinistra: 7% (+1) #Ishin|Destra federalista: 7% #Komei|Centro buddista: 3% #JCP|Sinistra: 3% #DPP|Centro: 2% (+1) #Reiwa|Sinistra: 1% (-1) #SDP|Centro-sinistra: 1% (+1) Nessun partito: 26% (+2) Non so: 2% Data rilevazione: 22-24 aprile +/-: 25-27 marzo Intervistati: 905 @UltimoraPolitics

Ultimora.net - POLITICS

@Ultimorapolitics · Post #37657 · 26.04.2022 г., 18:01

#Sondaggi#Giappone Sondaggio di SSRC: Scenario: quale partito sostieni #LDP|Centro-destra: 35% (+1) #Ishin|Destra federalista: 10% (-2) #CDP|Centro-sinistra: 7% (-2) #JCP|Sinistra: 4% (+1) #DPP|Centro: 4% #Komei|Centro buddista: 3% (+1) #Reiwa|Sinistra: 2% #SDP|Centro-sinistra: 1% #NKoku|Anti-NHK: 1% Nessun partito: 31% (+1) Altri: 1% Data rilevazione: 23 aprile +/-: 19 marzo Intervistati: 1018 @UltimoraPolitics

Libertà è ragione

@libertaeragione · Post #4272 · 27.10.2024 г., 19:03

#Elezioni#Giappone Risultati preliminari: #LDP|Grande tenda conservatrice: 191 seggi (-56) #CDP|Centro-sinistra: 148 (+50) #Ishin|Destra libertaria federalista: 38 (-6) #DPFP|Centro-destra riformista: 28 (+21) #Komei|Centro buddista: 24 (-8) #Reiwa|Sinistra populista: 9 (+6) #JCP|Sinistra: 8 (-2) Indipedenti filo-LDP: 6 Indipedenti opposizione: 6 #Sansei|Estrema destra populista: 3 (+2) #Hoshu|Estrema destra: 3 (+3) #SDP|Centro-sinistra: 1 Totale seggi: 465 Maggioranza: 233 Attuale governo: 215 seggi (❌Maggioranza persa❌) @OsservatorioEsteri

Ultimora.net - POLITICS

@Ultimorapolitics · Post #37658 · 26.04.2022 г., 18:16

#Sondaggi#Giappone Sondaggio di SSRC: "Se dovessi votare per l'elezione della #Sangiin (Camera Alta), per quale partito vorresti votare nel proporzionale?" #LDP|Centro-destra: 32% (-1) #Ishin|Destra federalista: 15% (+1) #CDP|Centro-sinistra: 8% (-4) #JCP|Sinistra: 5% (+1) #DPP|Centro: 4% (-1) #Komei|Centro buddista: 3% (+1) #Reiwa|Sinistra: 3% #SDP|Centro-sinistra: 1% (+1) #NKoku|Anti-NHK: 1% Non so: 27% (+2) Altri: 2% (+1) Data rilevazione: 23 aprile +/-: 19 marzo Intervistati: 1018 @UltimoraPolitics

Libertà è ragione

@libertaeragione · Post #4441 · 10.02.2026 г., 11:16

#Elezioni#Giappone Risultati definitivi: Affluenza: 54,34% uninominale (+0,5 rispetto al 2024) | 55,12% proporzionale (+1,28) #LDP|Grande tenda conservatrice: 316 seggi (+125) #CRA (#CDP-#Komei)|Centro: 49 (-123) #Ishin|Centro-destra riformista federalista: 36 (-2) #DPFP|Centro-destra: 28 #Sansei|Estrema destra populista: 15 (+12) #Mirai|Democrazia digitale: 11 (+11) #JCP|Sinistra: 4 (-4) Indipendenti: 4 (-8) #Reiwa|Sinistra populista: 1 (-8) #Yukoku|Populisti pro-tagli alle tasse: 1 (+1) #Hoshu|Estrema destra: 0 (-3) #SDP|Centro-sinistra: 0 (-1) Totale seggi: 465 Maggioranza: 233 Attuale governo (LDP-Ishin): 352 (✅maggioranza guadagnata ✅) @OsservatorioEsteri

Libertà è ragione

@libertaeragione · Post #4390 · 21.07.2025 г., 09:10

#Elezioni#Giappone#Sangiin Composizione della Camera dei Consiglieri: #LDP|Grande tenda conservatrice: 101 seggi (-13) #CDP|Centro-sinistra: 38 #DPFP|Centro-destra: 22 (+13) #Komei|Centro buddista: 21 (-6) #Ishin|Destra libertaria federalista: 19 (+1) #Sansei|Estrema destra populista: 15 (+14) Indipendenti: 13 (+1) #JCP|Sinistra: 7 (-4) #Reiwa|Sinistra populista: 6 (+1) #SDP|Centro-sinistra: 2 #Hoshu|Estrema destra: 2 (+2) #Mirai|Democrazia digitale: 1 (+1) #NHK|Destra populista anti-NHK: 1 (-1) Totale seggi: 248 Maggioranza: 125 Attuale governo (LDP-Komei): 122 seggi (❌maggioranza persa❌) In foto, la mappa del voto. @OsservatorioEsteri

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