В скрипты на Python добавили эмодзи

27.11.2019
39803

Разработчик Гейр Арне Хьелле решил привнести в программирование на Python больше красок: он создал проект, который позволяет использовать эмодзи в коде. 

Хьелле признался, что на создание проекта его вдохновила конференция EuroSciPy 2018 в Тренто, посвященная использованию Python в научных проектах. Специалисты указали на недостатки в обработке Unicode-символов на Python. Например, код вроде такого не поддерживается:

Хьелле решил эту проблему и разработал целый пакет для поддержки эмодзи.

 

 

Как это работает

Код пакета доступен на PyPi и GitHub. Чтобы установить пакет, вам потребуется менеджер пакетов PiP. Команда для него:
 

python -m pip install pythonji


После этого вы можете полноценно использовать эмодзи в своих скриптах на Python. Файлы скриптов pythonji имеют расширение 🐍 .

Чтобы запустить скрипт с эмодзи, необходимо вызывать его через pythonji, а не через python или py:
 

pythonji file.🐍


Разработчик также привел пример скрипта с эмодзи. Выглядит забавно, но работает:

В результате должен получиться похожий код. Конкретные значения могут отличаться из-за использования генератора случайных чисел:

Есть некоторые ограничения. Пока pythonji работает только для отдельных файлов скриптов. В скрипты можно включать любые стандартные модули, но не модули самого pythonji. Кроме того, менеджер пакетов PiP пока не поддерживает имена команд с Unicode. В будущем это планируют исправить.

Как выводить Unicode-символы в Python

В репозитории пакетов для Maven можно найти модуль emoji, который обеспечивает простой доступ к эмодзи. После его импорта можно написать:
 

print(emoji.emojize('Python is :thumbs_up_sign:'))

print(emoji.emojize('Python is :cookie:'))


Список доступных эмодзи. Без этого пакета выводить эмодзи можно по кодам их символов (в списке здесь нужно заменять + на 000):
 

print("\U0001f600")

print("\U0001F606")

print("\U0001F923")


Результат:

Наконец, можно использовать имя эмодзи в фигурных скобках:
 

print("\N{grinning face}")

print("\N{slightly smiling face}")

print("\N{winking face}")

Автор:
Обозреватель

См. также

Журнал Института инженеров электротехники и электроники IEEE Spectrum подготовил рейтинг самых популярных языков программирования в 2023 году. Статистика разделена на три категории.

01.09.2023    1920    VKuser24342747    4       

2

С помощью библиотек и средств визуализации Python можно будет манипулировать данными Excel, а затем использовать полученные результаты в формулах, диаграммах и сводных таблицах.

28.08.2023    1157    VKuser24342747    0       

2

Спустя пять лет разработки вышел релиз компилятора для языков программирования Python и Cython – проект Cython 3.0. Он позволяет транслировать код Python в представление на C/C++.

28.07.2023    1743    VKuser24342747    0       

2

GitLab представила собственную нейросеть Code Suggestions, способную генерировать код по запросу на естественном языке. ИИ-помощник поддерживает работу с 13 языками программирования.

10.07.2023    1751    VKuser24342747    0       

1

Stack Overflow представил рейтинг языков программирования за 2023 год. В исследовании учитывали не только частоту применения языка, но и интерес разработчиков к нему. Также компания составила рейтинг платформ и ИИ-инструментов. 

20.06.2023    2122    VKuser24342747    1       

2

По итогам внедрения поддержки разработки на Rust снизилось число уязвимостей, связанных с управлением памятью. Инженеры считают, что основное внимание нужно уделить написанию нового кода, а не переписыванию старого.

14.12.2022    7528    VKuser24342747    0       

3

В статистическом отчете репозитория названы самые популярные языки программирования среди пользователей платформы, а также данные об активности аудитории сервиса.

01.12.2022    8929    VKuser24342747    11       

3

Ричард Мэттью Столлман, основатель Фонда свободного программного обеспечения, представил руководство по языку C и расширениям GNU. Пособие доступно всем желающим и предназначено как для опытных, так и начинающих программистов.

19.09.2022    12262    VKuser24342747    0       

4

Комментарии

Инфостарт бот
1. VmvLer 27.11.19 10:33 Сейчас в теме
есть такая поговорка
"когда псу делать нечего он ???? кое что лижет"

грубовато, но это именно тот случай и не только в питоне,
а в индустрии современной разработки в целом.
vsesam80; +1 Ответить
2. dock 27.11.19 10:38 Сейчас в теме
(1) не псу, а коту! будьте точнее в цитатах :)

А если серьезно... Вот посмотришь на такие новости и думаешь: на каком основании 1С-ников называют НеДоПрограммистами ?
vsesam80; mrChOP93; wowik; +3 Ответить
3. VmvLer 27.11.19 10:41 Сейчас в теме
(2) у меня нет кота и есть только собачье подтверждение народной мудрости(
4. AlX0id 27.11.19 12:25 Сейчас в теме
(2)
Потому и называют, что в 1С такое не учудишь :)
5. Infactum 27.11.19 14:56 Сейчас в теме
Речь то, пожалуй, не про сам Python как язык, а про конкретный интерпретатор cpython? А если про сам язык, то где ссылка на PEP?
И ключевой момент, это вовсе не поддержка эмодзи, а корректная работа с символами юникода. А эмодзи - лишь наглядная демонстрация.
Не любят обозреватель вникать и суть новости раскрывать, к сожалению. Скопипастили инфоповод и довольны.
8. Gorod111 27.11.19 16:02 Сейчас в теме
(5)
$ python -m pip install pythonji делов то, понятно что не интерпретатор это пакет обычный
6. Leon29 27.11.19 15:03 Сейчас в теме
Это шаг к будущей визуализации программирования? Программирование превратится в игры. Целым процедурам и модулям давать картинки. Тогда расчет себестоимости будет БОССом?
CyberCerber; +1 Ответить
7. mkalimulin 27.11.19 15:59 Сейчас в теме
(6) Всегда смущало это словосочетание. "Визуализация программирования". Что это вообще значит? Программирование с помощью глаз? А сейчас мы как программируем? На слух? на ощупь?
10. Leon29 27.11.19 19:29 Сейчас в теме
(7)
Руками набирать не текст, а выбирать картинки, образы, которые в себе содержат уже готовые функции. Как в играх есть герои, у них амуниция, обвесы (давно уж не играл и даже слова позабыл) и сочетание всего этого даёт какую-то функциональность.
11. AlX0id 28.11.19 08:35 Сейчас в теме
(7)
Когда тебе дали квест - рассчитать себестоимость, а после его прохождения показали красивый мультик )
9. пользователь 27.11.19 19:28
Сообщение было скрыто модератором.
...
12. nvv1970 28.11.19 09:11 Сейчас в теме
ЗАЧЕМ?
Ещё один котёл в аду?
13. acanta 28.11.19 09:15 Сейчас в теме
На китайский переводят. Иероглифы начали рисовать.

Оставьте свое сообщение