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

Резултати

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

Пребарај: #vscode

当前筛选 #vscode清除筛选
非常滑稽

@EEEEYHN · Post #741 · 12.08.2019 г., 09:18

VSCode 毛玻璃插件 v1.0.6 正在绝赞开发中✨,包含一个亮色主题、全中文引导和若干 bug 修复。 #VSCodehttps://marketplace.visualstudio.com/items?itemName=eyhn.vscode-vibrancy Media via 滑稽 的 Twitter https://twitter.com/EEEEYHN/status/1160829133573763072

Hashtags

AppPie

@AppPie · Post #2059 · 02.07.2024 г., 04:02

VS Code File Nesting Config —— 利用 VS Code 的文件嵌套功能使你的文件树更简洁 🔗GitHub 该项目利用 VS Code 的文件嵌套功能,旨在为 VS Code 编辑器提供一个文件嵌套配置。文件嵌套是一种将相关文件组织在一起的方法,使得文件夹结构更加清晰和易于管理。项目配置支持多种编程语言和框架,如 TypeScript, JavaScript, Vue, React 等。用户可以自定义哪些文件类型应该被嵌套。 如何使用 1. 使用 VS Code 插件,自动获取更新。查看 readme 获取详细说明。 2. 手动设置:打开 VS Code,进入 settings.json,复制并粘贴 readme 中的代码片段。 许可证 MIT license。 #Github#VSCode 📮 频道 @AppPie

The Devs

@thedevs · Post #1609 · 18.11.2019 г., 16:30

Peacock, subtly change the color of your VS Code workspace. Ideal when you have multiple VS Code instances. #tools#vscode @thedevs https://kutt.it/o6jm19

TONlines – News

@tonlines · Post #6886 · 21.04.2025 г., 17:52

TON Contests: Surge in Tact VS Code Extension Downloads #Tact#VSCode The first day of the Tact Smart Battle on the TON Contests channel saw a significant increase in downloads of the Tact VS Code Extension. The community is eagerly awaiting further developments before the weekend. Source: link @tonlines

Hashtags

The Devs

@thedevs · Post #1768 · 22.06.2020 г., 18:10

Rainbow Fart, An VS Code extension that keeps giving you compliment while you are coding. #tools#vscode#fun @thedevs https://kutt.it/3TIBRE

Dasturlash hayoti️️ ️

@dasturlash_hayoti · Post #3811 · 23.05.2025 г., 10:04

📱VS Code foydalanuvchilari uchun foydali plaginlardan biri — CodeSnap. Bu plagin kodlaringizdan chiroyli skrinshotlar olishga yordam beradi. Plaginni o‘rnatish va undan qanday foydalanishni tezda tushunish uchun quyidagi videoni tavsiya qilaman: 📺Qo‘llanma video Kodlarni ijtimoiy tarmoqlarda ulashishda sifatli ko‘rinishi muhim — CodeSnap aynan shunda qo‘l keladi. #vscode#codesnap 💻@dasturlash_hayoti — bir xatoni tuzatib, ikkinchisiga tayyorlanish! 😅

Dasturlash hayoti️️ ️

@dasturlash_hayoti · Post #3625 · 15.01.2025 г., 06:55

💻Top 5 ta Visual Studio Code kengaytmalari Prettier — bu Visual Studio Code uchun avtomatik kod formatlovchi kengaytma. U HTML, CSS, JavaScript kabi tillarda kodni bir xil va o'qilishi oson tarzda formatlaydi. Kodni formatlash uchun Shift + Alt + F tugmalarini bosing. Material Icon Theme — bu Visual Studio Code uchun Material Design uslubidagi fayl va papka ikonkalari mavzusi. U kod muharririning ko'rinishini yaxshilaydi va fayllarni tezda tanib olishni osonlashtiradi. GitLens — bu Visual Studio Code uchun Gitni kuchaytiruvchi kengaytma. U Git tarixini ko'rish, commit'larni tahlil qilish va kod o'zgarishlarini kim amalga oshirganini ko'rsatadi. Live Server — bu Visual Studio Code uchun kengaytma bo'lib, HTML fayllarini real vaqtda brauzerda ko'rishni ta'minlaydi. Faylni saqlaganingizda, brauzer avtomatik yangilanadi. Path Intellisense — bu Visual Studio Code uchun kengaytma, u fayl va papkalarni avtomatik tarzda to'ldirishni ta'minlaydi. Fayl yo'llarini yozayotganda, kerakli fayl yoki papkani tezda topish imkonini beradi. Siz yana qaysi Visual Studio Code kengaytmalarini bilasiz yoki foydalangansiz? 💬 #vscode#extension#foydali 💻@jonibek_turapov

📓 Real Spencer Woo

@realSpencerWoo · Post #209 · 02.08.2020 г., 14:07

#VSCode#LaTeX#GitHub 📐VS Code Math to Image: Render LaTeX math equations in any Markdown file! GitHub | VS Marketplace | Medium 我和同学长期被 GitHub 霸凌:README 里用 LaTeX 写的数学公式他就是不给渲染。😕哼,行,老子徒手渲染!为了让 GitHub 的 Markdown 文件里面同样能显示数学公式,我和同学写了一个 VS Code 插件:VS Code Math to Image,用来帮我们把 LaTeX 公式渲染成 SVG 图片,并插入文件里面,这样 GitHub 里也能用 LaTeX 写数学公式啦! 目前 VS Code Math to Image 支持两种渲染方式:① 用 GitHub 自己的 LaTeX 渲染服务器(本来是用来渲染 Jupyter notebook 用的,我悄摸摸借来用一下噢!)渲染 SVG,并以外部链接的方式插入 <img> 标签;② 直接本地用 MathJax 渲染 LaTeX 公式为 SVG 图片,再保存到本地目录下来在 Markdown 文件里面引用。两种方法都能有效在 GitHub 里面写数学公式噢 (^///^) 妈妈再也不用担心我的科研成果没法往 GitHub 上面开源啦! 愣着干什么,快来下载 / Star / 五星好评啊! 📮 Via channel: @realSpencerWoo

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