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

Резултати

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

Пребарај: #imaging

当前筛选 #imaging清除筛选
Ignition of cognition

@neurobros · Post #731 · 16.07.2025 г., 08:26

Важная и трудоемкая работа по визуализации периферических нервных волокон по всему телу мыши. Вышла статья и коллекция изображений в высоком разрешении: архив на 377 Гб. 📄“High-speed mapping of whole-mouse peripheral nerves at subcellular resolution” | Cell (2025) 📄“Giant map details nerves across a mouse’s body” | Nature (2025) Важна она тем, что картирует иннервацию органов. Когда-то давно, в 2014м, Крис Фамм из GlaxoSmithKline (придумавший слово “электроцевтика”) написал вместе с учеными короткий текст, где они изложили перспективу биоэлектронной медицины и призвали к созданию ‘visceral nerve atlas’ на уровне нервных волокон. Спустя 10 лет это видение начинает обретать черты, правда, усилиями китайских товарищей. — Впрочем, от прародителей акупунктуры это даже ожидаемо. 📑 Подборка статей от Nature Portfolio: Electroceuticals. Рукописи еще принимают до 30.09.2025. #imaging | #tech

Interesting Planet 🌍

@interesting_planet_facts · Post #1351 · 24.03.2026 г., 12:11

🌎 The MRI (Magnetic Resonance Imaging) machine was invented in the 1970s by Raymond Damadian, Paul Lauterbur, and Peter Mansfield. MRI uses strong magnets and radio waves to produce detailed images of organs and tissues inside the body, without using X-rays. The first full-body MRI scan was completed in 1977. ✨ #invention⚡#medicine⚡#imaging 👉subscribe Interesting Planet 👉more Channels ​

Ignition of cognition

@neurobros · Post #698 · 18.06.2025 г., 15:24

Авторы предлагаютновый биомаркер нейродегенераций и в целом когнитивных состояний. Анализируют не молекулы, а “скорость изменения причинных влияний в разных областях мозга”, то есть это маркер функциональной связности мозга с высоким разрешением. Может быть построен на МЭГ, ЭЭГ или фМРТ. Пишут, что надежно различает стадии дегенерации, потенциально подходит для ранней диагностики. P.S. Cтатья в AI in Neuroscience, том самом журнале, запуск которого мы анонсировали год назад. #brain | #ai | #imaging | #theory

Venture Village Wall 🦄

@venturevillagewall · Post #4123 · 11.02.2025 г., 13:00

Investment Rounds Overview - February 2025 Various startups have secured funding in February 2025: - CulturePulse AI: $1.51M for AI-driven behavior analysis. - Jingcui Bio: $1.37M for biotechnological innovations. - Flock Mobility: $1.24M for electric vehicle fleets. - Genoa Instruments: $1.04M for advanced imaging technology. - WattByWatt: $975K focusing on renewable energy solutions. - Agatyca: $300.03K for educational services. - Eduvanz: $290.96K for educational finance. - Scanvio: $164.86K for AI ultrasound diagnostics in gynecology. Additionally, *Binance* and the *SEC* are seeking resolution in their ongoing case. Analysts observe BTC accumulation trends after a significant decline in Binance's reserves, recalling past market surges. For more insights, visit the full articles: Binance and SEC Update. #VC#Crypto#AI#Funding#Startups#Biotech#EV#Imaging#RenewableEnergy#Education#Diagnostics#CulturePulse#Jingcui#FlockMobility#GenoaInstruments#WattByWatt#Agatyca#Eduvanz#Scanvio#Binance#BTC