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

Резултати

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

Пребарај: #zelensky

当前筛选 #zelensky清除筛选
RT en français

@RTenfrancais · Post #80309 · 28.04.2026 г., 17:45

💬#Zelensky affirme que l’Ukraine se lancera dans l’exportation d’armes. Kiev prévoit de fournir notamment des drones, des missiles, des munitions ainsi que des logiciels à ses partenaires qui lui apportent leur soutien. Aucun pays précis n’a été mentionné. RT en français • Osez questionner !

Hashtags

Ultimora.net - POLITICS 24

@Ultimorapolitics24 · Post #51796 · 30.01.2026 г., 10:23

Volodymyr #Zelensky ha detto di essere pronto a compromessi per i colloqui di pace ma che la Russia deve anch'essa cedere; sul fronte territoriale, in particolare Donetsk, "le dure richieste imposte all'Ucraina non sono chiaramente un compromesso. Si tratta di un cambiamento dell'integrità territoriale dell'Ucraina". Zelensky ha aggiunto che la "soluzione meno problematica" è che Ucraina e truppe russe "restino dove sono". @UltimoraPolitics24

Hashtags

Ultimora.net - POLITICS 24

@Ultimorapolitics24 · Post #51520 · 25.12.2025 г., 09:36

Volodymyr #Zelensky: "Ognuno di noi potrebbe pensare, 'Che possa morire (Putin, ndr)'. Ma quando ci rivolgiamo a Dio, ovviamente, chiediamo qualcosa di più grande. Chiediamo la pace per l'Ucraina. Lottiamo per essa. E preghiamo per essa. E la meritiamo". @UltimoraPolitics24

Hashtags

Ultimora.net - POLITICS

@ULTIMORAPOLITICS · Post #45663 · 16.08.2025 г., 08:32

❗Il Presidente ucraino #Zelensky: "Lunedì incontrerò il presidente Trump a Washington, D.C., per discutere tutti i dettagli riguardanti la fine degli uccisioni e della guerra. Sono grato per l'invito. È importante che gli europei siano coinvolti in ogni fase per garantire solide garanzie di sicurezza insieme all'America. Abbiamo anche discusso dei segnali positivi provenienti dalla parte americana in merito alla partecipazione alla garanzia della sicurezza dell'Ucraina. Continuiamo a coordinare le nostre posizioni con tutti i partner. Ringrazio tutti coloro che ci stanno aiutando."

Hashtags

Ultimora.net - POLITICS

@ULTIMORAPOLITICS · Post #45447 · 19.03.2025 г., 18:07

Volodymyr #Zelensky: “Ho ringraziato il Presidente Trump e il popolo americano per il loro sostegno. Gli ucraini vogliono la pace, motivo per cui l'Ucraina ha accettato la proposta di un cessate il fuoco incondizionato" @UltimoraPolitics

Hashtags

Ultimora.net - POLITICS

@ULTIMORAPOLITICS · Post #42759 · 17.01.2023 г., 14:01

Volodymyr #Zelensky: "Al giorno d'oggi vedo Giorgia filo-italiana e questa è la cosa più importante. Sostiene l'Ucraina e i valori comuni. Oggi è così. L'aspetto molto in Ucraina in visita ufficiale. Si, è vero, lei verrà presto. Non posso comunicare la data, ma presto" @UltimoraPolitics

Hashtags

Ultimora.net - POLITICS

@ULTIMORAPOLITICS · Post #42758 · 17.01.2023 г., 14:01

#Zelensky: "Mi è assolutamente chiara la sua retorica. Anche se nella società c'erano delle sensazioni diverse perché Draghi sosteneva l'Ucraina e ora c'è un governo diverso e c'era chi divulgava informazioni che questo governo sarebbe stato più filorusso" @UltimoraPolitics

Hashtags

RT France actualités

@rt_fra · Post #40863 · 08.05.2026 г., 09:05

💬Mémoire sacrifiée #Zelensky a une nouvelle fois montré à quel point il se détache de l’héritage de la Grande Guerre patriotique et de la mémoire des millions de personnes tombées face au nazisme. RT en français • Osez questionner !

Hashtags

RT France actualités

@rt_fra · Post #40817 · 07.05.2026 г., 16:41

❗️#Zelensky menace à nouveau, affirmant qu’il « ne recommande pas » aux invités étrangers d’être à Moscou pour la fête de la Victoire. RT en français • Osez questionner !

Hashtags

RT France actualités

@rt_fra · Post #40708 · 06.05.2026 г., 15:00

🗣« D’abord, #Zelensky a quasiment rejeté l’initiative de Russie d'un cessez-le-feu pour le Jour de la Victoire mais ensuite il a recouru à une ruse tactique, déclarant une « trêve » pour la nuit du 5 au 6 mai »‎ – Léonid Sloutsky, président de la commission des affaires internationales de la Douma, s’exprime sur le cessez-le-feu pour le Jour de la Victoire. « D’abord, Zelensky a quasiment rejeté l’initiative de Russie sur le cessez-le-feu pour le Jour de la Victoire mais ensuite il s’est décidé à une ruse tactique, déclarant une « trêve » dans la nuit du 5 au 6 mai. La raison est banale : un ego meurtri. Comme si Moscou et Washington avaient discuté de cette idée mais que personne ne s’était adressé officiellement à Kiev à ce sujet. […] En réalité, les néonazis ukrainiens n’ont besoin ni d’un cessez-le-feu ni de la paix. Zelensky veut jouer selon ses propres règles, en comptant sur des provocations, et fait le singe devant ses sponsors européens. » RT en français • Osez questionner !

Hashtags

RT France actualités

@rt_fra · Post #40654 · 05.05.2026 г., 20:15

⏺Refusant la trêve pour le Jour de la Victoire, #Zelensky fixe une autre date. Le point avec François Martin, géopolitologue et essayiste. RT en français • Osez questionner !

Hashtags

123•••10•••20•••2526
ПретходнаСтраница 1 од 26Следна