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

Резултати

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

Пребарај: #arm64

当前筛选 #arm64清除筛选
垃圾场频道

@lajichangeu · Post #57 · 29.06.2022 г., 03:28

Version: 0.24.9.1530-arm64-v8a Commit: a0dc1b0d, 16/06/2022, 08:31 UTC MD5: 8a7b9fc07657163d2b26ed193e1f21c0 SHA-1: 1ce73e5e0d9c04487691cc9b468c692e9a758c08 SHA-256: dd5251bb3e6329e724cce752d9468d7f490400a2bea0433e4506b2960117629f #arm64#stable#apk

Alexa Mods

@itsmealexaliza · Post #1150 · 17.03.2025 г., 18:50

🚀 HappyMod 3.1.6c [ADSFREE + VIP] 🔥 🔹 Version: 3.1.6c 🔹 Architecture: ✅ ARMv7 & ✅ ARM64-v8a Supported 🔹 Size: [File Size] ✨ MOD Features: ✅ No Ads – Enjoy an ad-free experience! ✅ VIP Unlocked – Premium features activated! ✅ High-Speed Downloads – Faster and more stable! ✅ Fully Tested – Safe & secure to use! 📌 About HappyMod: HappyMod is the ultimate marketplace for modded Android apps & games. Get access to thousands of modded APKs with premium features unlocked! 📥 Download Now: 📢 Join Our Telegram for Updates & Support! #HappyMod#ModAPK#VIPUnlocked#AndroidMods#ARM64#ARMv7

Alexa Mods

@itsmealexaliza · Post #1194 · 27.07.2025 г., 03:29

HappyMod 3.2.1 [ADSFREE + VIP + x86 + MODDED] App Info: - Version: 3.2.1 - Architecture: ARMv7 | ARM64-v8a | x86 - Release Date: 2025-07-21 (Latest 360加固) - Size: 20 MB - Modder: alexaliza [AlexaMods] MOD Features: - Unlimited Downloads – No speed or file limits. - Ads Free – Clean interface without ads. - VIP Unlocked – Access all premium & exclusive content. - Latest 360加固 2025-07-21 Signature Killed & Repacked. - Premium Mods Access – Thousands of exclusive modded apps/games. - 100% Safe – Play Protect Verified (No malware or trojans). About HappyMod: HappyMod is the #1 platform for modded Android apps and games, offering verified, safe, and premium APKs with exclusive features. Join Our Telegram for Updates: https://t.me/itsmealexaliza #HappyMod#ModAPK#VIPUnlocked#AlexaMods#ADFree#AndroidMods#ARM64#ARMv7#x86#UnlimitedDownloads

GitHub Trends

@githubtrending · Post #15431 · 23.01.2026 г., 13:30

#cplusplus#3d_engine#arm64#cmake#cplusplus#cpp17#d3d11#directx#directx11#engine#game#game_engine#gamedev#mod#opengl#opensource#sdl#sdl2#stalker#x64#xray_engine OpenXRay is a free, improved version of the X-Ray Engine for S.T.A.L.K.E.R. games like Call of Pripyat and Clear Sky. It adds 64-bit support, higher FPS, bug fixes, modding tools, and runs on Linux, macOS, and more. This benefits you with smoother, more stable gameplay, better performance on modern or non-Windows PCs, and easy access to new mods without changing the classic feel. https://github.com/OpenXRay/xray-16

GitHub Trends

@githubtrending · Post #15612 · 12.04.2026 г., 11:30

#c_lang#aarch64#arm#arm64#bios#boot_loader#boot_manager#bootloader#efi#gpt#loongarch#loongarch64#loongson#mbr#risc_v#riscv#riscv64#uefi#x64#x86#x86_64 Limine is a modern bootloader that boots Linux and other OSes on x86, ARM64, RISC-V, and LoongArch64 hardware, supporting MBR/GPT partitions and FAT/ISO filesystems on 32-bit Pentium Pro+ or 64-bit systems. Get binaries via Git (e.g., `git clone --branch=v11.x-binary`), build tools with `make`, and join Matrix/Fluxer chats for help. This lets you easily manage and boot multiple OSes with a clean menu, saving time on custom PC or server setups. https://github.com/Limine-Bootloader/Limine