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

Резултати

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

Пребарај: #oscars2026

当前筛选 #oscars2026清除筛选
Ultimora 24 - Notizie da Ultimora.net

@Ultimora24 · Post #20938 · 16.03.2026 г., 02:21

#Oscars2026, miglior attore protagonista Michael B. Jordan per 'Sinners'. Miglior attrice protagonista Jessie Buckley per 'Hamnet'. Migliore regia Paul Thomas Anderson per 'Una battaglia dopo l'altra'. Miglior film internazionale 'Sentimental Value' di Joachim Trier: prima statuetta per la Norvegia 🗞@ultimora24

Hashtags

Galina Ketova

@galinaketova2024 · Post #5435 · 15.03.2026 г., 17:26

🏆36 часов до Оскара-26 И вот мой традиционный прогноз. В прошлые несколько лет мое экспертное мнение совпадало с коллегами на 80-90 %☝🏼 1. Кто победит 2. Кто мой фаворит Погнали 🎬 Лучший фильм Победит: ‘Грешники ’ ( 90 % ) ‘Битва за битвой’ ( 10 % ) Мой выбор: ‘Грешники’. ‘БзБ’ мощное кино, ‘Грешники’ - шедевр Лучший режиссер Победит: Райан Куглер ‘Грешники ’ ( 50% ) или - Пол Томас Андерсон ‘Битва за битвой’ ( 50 % ) Мой выбор: Райан Куглер. Но буду рада если победит и ПТА. Оба заслуживают Лучшая женская роль Победит: Джесси Бакли - ‘Гамнет’ ( 90% ) или Кейт Хадсон ‘Мелодия их мечты’ ( 10% ) Мой выбор: Ее здесь нет. Главный прокол этого Оскара - не включение в номинацию Дженнифер Лоуренс в ‘Умри, моя любовь’. Но она бы не оставила шансов троечницам. Теперь их звездный час Лучшая мужская роль Победит: Майкл Б. Джордан - ‘Грешники’( 50% ) или Тимоти Шаламе - ‘Марти Суприм’ ( 50% ) Мой выбор: Джордан и Шаламе - это бой между Мохамедом Али и Брюсом Ли, они абсолютно разные, но Джордан в двойной роли играет на уровне БП, а Шаламе, в которого я, после провального Боба Дилана уже не верила, просто влюбил в себя заново, как героиню Одессы Эзайон. Да, у Ди Каприо в этот раз - ноль шансов на их фоне Лучшая женская роль II плана Победит: Тейана Тейлор ‘Битва за битвой’ ( 50% ) или Эми Мадиган ‘Орудия’ ( 50% ) Мой выбор: Тейана Тейлор 🫰🏼Без вариантов. Прочитайте мою рецензию Лучшая мужская роль II плана Победит: Шон Пенн ‘БзБ’ ( 40%) или Делрой Линдо ‘Грешники’ ( 40% ) или Бенисио Дель Торо ‘БзБ’ ( 20% ) Мой выбор: Бенисио Дель Торо. Было бы справедливо - у него две выдающиеся роли за год: в ‘БзБ’ и в ‘Финикийском схематозе’ Уеса Андерсона, которого на Оскаре традиционно игнорят. Но Шон Пенн тоже здесь могуч, бесспорно Лучший оригинальный сценарий Победит: ‘Грешники ’ Райан Куглер ( 80% ) или ‘Простая случайность’ Джафар Панахи, Надер Севар, Шадмер Растин, Мехди Махмудян ( 20% ) Мой выбор: ‘Грешники ’ и ‘Простая случайность’. Совсем разные фильмы, одинаково безупречные сценарии Адаптированный сценарий Победит: ‘БзБ’ ( 90% ) или ‘Сны поездов ’ ( 10% ) Мой выбор: ‘БзБ’ - коллаб Пола Томаса Андерсона и Томаса Пинчона 🤍 Лучший оператор Победит: Майкл Бауман - ‘БзБ’ Мой выбор: Майкл Бауман в ‘БзБ’ невообразимо крут, но Отем Дюральд Аркапоу сняла ‘Грешников’ на такой сложной оптике, на лету меняя стиль съемки сообразно жанрам, что тоже достойна Оскара Лучший художник Победит: ‘Грешники ’( 30% ) или ‘Франкенштейн’ ( 40% ) или ‘Гамнет’ ( 30% ) Мой выбор: ‘Умри, моя любовь’, но Линн Ремси, как и Уэса Андерсона, академики не видят Лучший дизайн костюмов Победит: ‘Франкенштейн’ ( 60% ) или ‘Грешники’ ( 40% ) Мой выбор: ‘Умри, моя любовь’ - ‘…’ Лучший грим и прически Победит: ‘Грешники ’ ( 50 % ) или ‘Франкенштейн’ ( 50 % ) Мой выбор: ‘Грешники’ Лучший кастинг Победит: ‘Грешники’ ( Warner bros, Франсин Мейслер ) 90 % или ‘БзБ’ ( Warner bros, Кассандра Калакундис ) 10% Мой выбор: ‘Грешники’ - никого никем заменить нельзя. Плюс Бадди Гай, которого академики, не будь дураками, пригласили выступить завтра на церемонии ♥️ Лучший международный фильм Победит: ‘Сентиментальная ценность ’ Йоахим Триер ( 40 % ) иди ‘Секретный агент’ Клебер Мендонса Филью ( 30 % ) или ‘Простая случайность’ Джафара Панахи ( 30 % ) Мой выбор: ‘Простая случайность’. Сильнейшее кино, и был бы тонкий ход по отношению к Ирану, где Панахи отсидел в тюрьме за свои гуманистические идеи Стрим начну в 2 ночи - просыпаемся, котятки, вовремя и не спим ⏰ #oscars2026

Hashtags

ONE MORE EPISODE

@one1_more_episode · Post #10923 · 16.03.2026 г., 07:54

ВСЕ ПОБЕДИТЕЛИ ОСКАРА В ОДНОМ ВИДЕО 🏆 На мой взгляд все награды взяли более, чем заслуженно. Сохраняй, чтобы не забыть, какие фильмы обязательно нужно посмотреть 👀 #оскар2026#оскар#oscars#oscars2026

ONE MORE EPISODE

@one1_more_episode · Post #10922 · 15.03.2026 г., 17:30

16 номинаций на «Оскар» для хоррора? 😱 Разбираем, почему «Грешники» стал главным феноменом года. Уже смотрели?🎥 #Грешники#Sinners#РайанКуглер#Oscars2026#Оскар2026