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

Резултати

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

Пребарај: #unity

当前筛选 #unity清除筛选
DGN

@DansGN · Post #4875 · 16.08.2022 г., 09:11

Unity 董事会宣布将继续 ironSource 的收购并拒绝 AppLovin 的并购请求 https://www.businesswire.com/news/home/20220815005220/en/Unity-Board-of-Directors-Reaffirms-Commitment-to-ironSource-Transaction-and-Rejects-Unsolicited-Proposal-from-AppLovin #Unity

Hashtags

DGN

@DansGN · Post #4872 · 10.08.2022 г., 15:40

AppLovin 宣布,将以每股 58.85 美元,总计 175.4 亿美元的价格收购 Unity。收购后 AppLovin 将与 Unity 合并,Unity 将拥有合并后的公司的 55% 的流通股和 49% 的投票权。作为收购条件,Unity 将终止此前和 ironSource 的合并计划 https://investors.applovin.com/news/news-details/2022/AppLovin-Submits-a-Compelling-Non-Binding-Proposal-to-Combine-with-Unity/default.aspx #Unity

Hashtags

DGN

@DansGN · Post #4842 · 19.07.2022 г., 00:41

Unity CEO对自己早先向部分游戏开发者说出的侮辱性言论发表道歉声明 https://twitter.com/johnriccitiello/status/1548326529217679365 #Unity

Hashtags

Megyn Kelly

@megynkelly · Post #228 · 21.10.2021 г., 19:25

So the White House was well aware of the plan to go after parents as “domestic terrorists” before that term ever appeared in the Nat’l Assn of School Boards letter to DOJ & was clearly A-OK w/that, & w/the plan to sic the DOJ/FBI on moms & dads worried about their kids. #unityhttps://twitter.com/noahpollak/status/1451243893165461516

Hashtags

NexTech招聘官方频道

@nextech666 · Post #521 · 04.09.2024 г., 04:56

#Unity#客户端 Unity开发工程师 薪资待遇:面议,依资历谈薪 简历投递窗口:@jiesi997@nownow168@tung51688 岗位职责: 1. 根据任务需求开发功能模块; 2. 开发及维护Unity编辑器工具; 3. 对项目及负责的模块进行性能优化. 任职要求: 1、熟练掌握C#和Lua编程语言; 2、5年以上Unity开发经验; 3、掌握良好的数据结构和算法; 4、具备良好的3D图形学基础,熟悉Shader编程; 5、热爱游戏,对移动游戏充满热情,拥有高度责任心。

🗂 Unity, разработчик 3D-движка для видеоигр, представил синтетический набор данных для машинного обучения. По словам разработчиков, датасет может задавать алгоритмам условия, которых нет в естественных данных, например, из-за требований конфиденциальности. 👀 Они считают, что синтетические датасеты помогут разработчикам систем компьютерного зрения на ранних этапах проектирования продуктов, когда данные отсутствуют или еще недоступны. #Unity#датасет

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