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

Резултати

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

Пребарај: #cash

当前筛选 #cash清除筛选
beng!

@mdmbeng · Post #2611 · 30.07.2025 г., 02:00

#Cash 🇺🇸Cash App 推出全新「资金池」功能,支持 Apple Pay 群组收款,无需下载应用 美国支付平台 Cash App(隶属 Block 公司)于 2025年7月29日 正式推出名为「Pools」的新功能,允许用户创建群组「资金池」方便朋友共同支付费用,且支持 未安装 Cash App 的用户通过 Apple Pay 或 Google Pay 参与付款 。 • 功能亮点: 参与者可通过 in‑app 的 $Cashtag 邀请,或发送短信/分享链接方式支付。发起人可以设定筹款目标、实时查看进度,并随时关闭资金池,将筹得款项转入自身 Cash App 余额 。 • 适用场景广泛: 适用于多人聚餐、旅行费用分摊、生日礼物筹款等多种社交活动。借助 Apple Pay 和 Google Pay 的便捷接入方式,让筹款更轻松无阻 。 • 上线现况与未来计划: 功能已于当天向部分精选用户开放测试,Cash App 表示将在未来几个月内逐步推广至所有用户,实现更广泛覆盖 。 频道:@mdmbeng 投稿:@mdmbeng_Bot

Hashtags

频道推荐&剪报

@PD_JB · Post #64 · 21.12.2025 г., 16:36

#Cash#美国 💰美国 Cash App 钱包现支持通过 ITIN 申请免费实体卡,部分功能仍需us id验证解锁 近日,美国支付平台 Cash App 迎来新变化。用户现可通过 ITIN(个人纳税识别号)申请 Cash App 免费实体卡,无需社会安全号码(SSN),降低了非美国公民使用门槛。 不过需要注意的是,如用户希望在实体卡寄达前将 Cash App Card 添加至 Apple Pay 使用,仍需完成身份验证。验证文件需在指定范围内选择其一,包括美国驾照、州身份证、美国护照或永久居民卡。如未完成验证,账户将处于功能半受限状态。 在未完成完整身份验证的情况下,账户相关限额较低,包括转账、充值、提现及卡片消费均受到限制。 使用 邀请链接 注册,各获得5$ 频道:@mdmbeng 投稿:@mdmbeng_Bot ─ 💬 科技、数码、新闻,偶尔有电影/游戏长评。 📢 beng! 🔗https://t.me/mdmbeng

Hashtags

Airdrop Presents 🗽

@airdrop_presents · Post #2028 · 28.11.2022 г., 07:19

🪂#Reminder airdrop ~ BitMart X CASH 🟢 ✅Verified By: Airdrop Presents🗽 💲 Reward: worth of 150 #Cash 🌐 WebsiteBitMart 💎 Presents Ratings: 😀😀⭐️ ➡️https://play.google.com/store/apps/details?id=com.bitmart.bitmarket ➡️ Join Telegram Group ➡️ Join Telegram Channel ➡️ Follow Twitter, like and retweet the pinned post ➡️ Submit your details to the airdrop Page. ℹ️ Distribution date: Announced by the project is after December 13, 2022 .

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