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

Пребарај: #thewalkingdead

当前筛选 #thewalkingdead清除筛选
🪷Стикерпаки от Уилл🪷

@fandom_sticker1 · Post #5748 · 27.11.2024 г., 18:24

❀•°•═══ஓ๑🪟๑ஓ════•°•❀ ꒷︶꒷꒥꒷‧₊˚૮꒰˵•ᵜ•˵꒱ა‧₊˚꒷︶꒷꒥꒷꒷︶꒷꒥꒷‧₊˚˵•ᵜ•˵ ☆ •𝕿𝖍𝖊 𝖜𝖆𝖑𝖐𝖎𝖓𝖌 𝖉𝖊𝖆𝖉 •☆ .・。.・゜✭・.・✫・゜・。..・。.・✭・.・ ·˚ ༘₊· ͟͟͞͞꒰➳ #TheWalkingDead ꒷︶꒷꒥꒷‧₊˚૮꒰˵•ᵜ•˵꒱ა‧₊˚꒷︶꒷꒥꒷꒷︶꒷꒥꒷‧₊˚˵•ᵜ•˵ ❀•°•═══ஓ๑🪟๑ஓ════•°•❀

Comicverso

@Comicverso · Post #44282 · 03.04.2025 г., 14:57

📔 | The Walking Dead (Deluxe) 📆 | Actualizable... 💬 | Español 📂 | (79/193) 🗞 | #Image 📚 | #TheWalkingDead 📇 | TWDEC 🗓 | 2003 - 2019 Únete a @Comicverso

𝙁𝙞𝙡𝙞𝙢𝙤 | فیلیمو

@godzilla_plus · Post #7429 · 10.09.2025 г., 10:51

🎬 سریال « مردگان متحرک: دریل دیکسون » 🎬 The Walking Dead: Daryl Dixon (2023-2025) (The Book of Carol) « قسمت ششم فصل سوم » 🎭┋ژانر : #درام#هیجان_انگیز#ترسناک 🎬┋نمره: IMDB 7.5 🌍┋محصول : آمریکا 📝┋زیرنویس چسبیده فارسی 🗓┋ روز های پخش: در حال پخش (AMC) 💬┋خلاصه داستان: داستان دریل دیکسون که پس از جدایی از گروه قدیمی‌اش حالا در فرانسه در هم شکسته سرگردان شده و دنبال راهی برای بازگشت به خانه است... 💬 فایل های زیرنویس فارسی چسبیده: ‌ ‹↓›‌ ‌ ‹↓› ‌ ‹↓› 📥S01:480p┇720p┇1080p 📥S02:480p┇720p┇1080p 📥S03: E1┇E2┋E3┋E4┋E5┋E6┋ 🔊مشکلات پخش و زیرنویس #Serial | #TheWalkingDead ⌞ T.me/Filimo_download ⌝

🇬🇧The Walking Dead #01 🇷🇺Ходячие мертвецы #01 Том 1. Дни минувшие Рик Граймс, заместитель шерифа из Кентукки, раненый при исполнении служебных обязанностей, выходит из комы в мире, наводнённым нежитью. Вернувшись домой, он обнаруживает, что его жена и сын ушли. Чтобы найти свою семью, Рик отправляется в зону военной эвакуации в Атланте, но обнаруживает, что город был повержен ходячими мертвецами #комикс#comics#ходячиемертвецы#TheWalkingDead #чтиводня

安卓手游分享(实测)

@android_game_share · Post #134 · 15.09.2025 г., 14:01

【游戏名称】:行尸走肉:无人之地(The Walking Dead: No Man's Land) 【游戏简介】:《行尸走肉:无人之地》是德国发行的steam移植末世题材回合制策略角色扮演手游,玩家将置身于活死人横行的残酷世界,肩负带领生存者度过危机、管理资源并做出命运抉择的使命。游戏可召集包含瑞克、米琼恩、戴瑞等影集经典角色的终极队伍,训练升级以对抗大批丧尸,重温《阴尸路》惊险桥段;支持加入公会与好友组队参与公会战,对抗全球玩家;还能探索季节、剧情、哨站等多种游戏模式,收集独占资源与强力武器,在山顶寨、亚歴山卓安全社等经典场景中,凭借战术决策与战略行动应对独特敌人挑战,确保生存者存活。 【游戏语言】:中文 【游戏地区】:德国 【游戏版本】:v6.30.0.4834 【游戏大小】:1.04GB 【测试设备】:Android12 【特别说明】:免谷歌❗️ 【下载链接】: 百度网盘:https://pan.baidu.com/s/1WbkDKhUUjV4HO7wuEI6m-g?pwd=bmi8 夸克网盘:https://pan.quark.cn/s/54352fea14fd 🏷:#行尸走肉#无人之地#TheWalkingDead#NoMan'sLand #steam移植手游