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

Резултати

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

Пребарај: #pocket

当前筛选 #pocket清除筛选
BotsGram®

@botsgram_cu · Post #3994 · 08.06.2021 г., 17:40

¿Que puede hacer este bot? @ToReadingListBot Conecte su cuenta de Pocket y guarde los enlaces de Telegram en su lista de lectura. Idiomas: español, inglés (Visto en @botsgram_cu) #pocket

Hashtags

Yummy 😋

@godlynews1 · Post #14079 · 12.11.2025 г., 02:18

Apple 推出iPhone Pocket,售价$149.95 苹果将其称为,一种既美观又实用的佩戴和携带 iPhone 的方法 Apple在新闻稿中表示,ISSEY MIYAKE与苹果公司今天联合推出了 iPhone Pocket。 该产品的设计灵感源自“布料”的概念,采用独特的 3D 针织结构,能够适配任何型号的 iPhone 以及所有可以放入口袋的物品。 从 11 月 14 日星期五开始,用户可以在部分苹果零售店和苹果官网购买,覆盖法国、大中华区、意大利、日本、新加坡、韩国、英国和美国。 苹果广东道,香港 苹果银座,东京 苹果静安,上海 苹果圣日耳曼市场,巴黎 苹果明洞,首尔 苹果乌节路,新加坡 Apple Piazza Liberty,米兰 苹果摄政街,伦敦 苹果Soho,纽约市 苹果信义 A13,台北 🗒 标签: #Apple#Pocket 📢 频道: @GodlyNews1 🤖 投稿: @GodlyNewsBot

DGN

@DansGN · Post #4856 · 29.07.2022 г., 16:15

Analogue 公布了 openFPGA 开发者计划,旨在通过 FPGA 技术在 Analogue Pocket 上支持更多硬件设备的模拟,从而更好地保存这些硬件。Analogue Pocket 现已支持 PDP-1,并可以运行《太空大战》。尽管任意一台 Analogue Pocket 设备都可以被当作开发平台,Analogue 还是生产了少量的 Analogue Developer Kits 发给特定的开发者 https://www.analogue.co/developer #Analogue#Pocket

ALL About RSS

@AboutRss · Post #1198 · 12.04.2022 г., 01:00

RSS2Pocket 工具: Curated #Pocket 是一款稍后读工具,借助 #Curated ,用户可以将 Newsletter、RSS 内容自动导入 Pocket。其官方称未来将设法支持 Twitter Thread 的导入。 https://withcurated.com/ 发现于 https://twitter.com/RSSCircus/status/1511949250703331330

探索号

@seeker_rc · Post #20430 · 13.05.2026 г., 08:55

大疆 Pocket 4P 上手体验:欲穷千里目,更多摄像头 如果要选一个近三年来最火的相机,大疆 Pocket 3 绝对榜上有名。 自 2023 年 10 月发布以来,Pocket 3 在两年不到时间里卖出超过一千万台,大疆 CEO 汪滔在前段时间的采访中直接表示: 我们没想到这是个几百亿级别的市场,在便携相机/卡片机这个品类,我们市占比比索尼、佳能、理光和富士全加起来还要多几倍。 前不久,大疆正式发布 Pocket 4,用更高的像素与视频规格回应了市场期待,爱范儿也第一时间上手评测了 Pocket 4。 谁曾想,大疆并未偃旗息鼓,紧随其后发布了 Pocket 4P 的预告。 爱范儿也第一时间拿到了 Pocket 4P,在体验了一番这台双... via 爱范儿 标签: #Pocket#镜头#Live ⚡️探索号频道 ⚡️探索者频道 ⚡️探索者交流群 ⚡️ Youtube 频道:科技探索者 每天推荐有趣内容,欢迎订阅、转发。

没处说的话

@nova_dng · Post #665 · 23.05.2025 г., 05:45

#博客 更新啦~ 📰标题:文字的速度终于赶上了短视频 📅日期:2025/5/23 ✏️摘要: 全球最大的稍后阅读工具 Pocket 宣布停服,它将在今年 10 月 8 日删除所有账户和用户数据。 实际在 2017… 🏷️标签:#AI#Pocket#写作 👉阅读全文👈

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