13.1 Список escape-символів
Escape-символи з'явилися в ранні дні комп'ютерних технологій як спосіб вставки керуючих кодів в текстові рядки. Історично, вони використовувалися для управління пристроями, такими як принтери і телетайпи, дозволяючи вставляти команди, такі як перенесення рядка або повернення каретки, безпосередньо в потоки даних.
З розвитком програмування ці символи стали частиною стандартних мов програмування, включаючи C, звідки і перейшли в Python та інші мови. В Python escape-символи позначаються зворотнім слешем \, за яким слідує символ, що визначає їх функцію, наприклад \n для нового рядка.
Escape-символи в Python грають ключову роль в обробці рядків, дозволяючи вставляти спеціальні символи, які інакше було б важко чи неможливо включити безпосередньо в рядки
Ось таблиця з найпопулярнішими з них
| Escape-символ | Опис |
|---|---|
\\ |
Зворотний слеш |
\' |
Одинарна лапка |
\" |
Подвійна лапка |
\n |
Новий рядок |
\r |
Повернення каретки |
\t |
Горизонтальна табуляція |
\b |
Забій, видаляє попередній символ |
\f |
Прогін сторінки |
\a |
Звуковий сигнал |
Прогін сторінки і звуковий сигнал – це все залишилося з тих часів, коли текст видавали на принтер або на телетайп. Але, як кажуть, з пісні слів не викинеш.
Зате, наприклад горизонтальна табуляція постійно використовується для вирівнювання коду.
13.2 Вставка Unicode-символів
З початку винайдення комп'ютерів вони могли працювати лише з рядками, що містять латинські літери, цифри, числа та трохи знаків. Перший набір символів (кодування ASCII) включав у себе всього 128 символів, в тому числі керуючі типу «прогін сторінки» :)
Ідея Unicode виникла лише в 1987 році, коли Джо Бекер з Xerox і Лі Коллінз з Apple почали обговорення можливості створення нової системи кодування символів, яка могла б підтримувати всі письменності світу.
Вони уявляли Unicode як 16-бітну систему, що дозволяє використовувати 65,536 унікальних символів, що, на їхню думку, було б достатньо для покриття всіх відомих скриптів. Але це, звісно, виявилося не так :)
З часом Unicode розширився, включивши не лише більше «мовних скриптів», але й обширний набір символів, емодзі та історичні тексти. Unicode 13.0, випущений у березні 2020 року, містить понад 143,000 символів, охоплюючи понад 150 «скриптів» і безліч символьних наборів, що робить його комплексною системою кодування для цифрової епохи.
Unicode був доданий в Python у версії 2.0, яка вийшла в жовтні 2000 року. Це значна зміна дозволила Python краще підтримувати міжнародні мови та символи, спрощуючи розробку міжнародних додатків.
Кодування файлів з кодом Python підтримує Unicode, так що ви можете вставляти в текст символи на будь-якій мові:
print("Come to the Dark Side") # Англійська
print("Ven al Lado Oscuro") # Іспанська
print("Komm auf die dunkle Seite") # Німецька
print("暗黒面に来なさい") # Японська
print("来到黑暗面") # Китайська
Вставити в текст символ Unicode за його номером можна з допомогою 16-тиричного кодування:
| Escape-символ | Опис |
|---|---|
| \\uxxxx | Символ Unicode з 16-бітним шістнадцятковим значенням xxxx |
| \\Uxxxxxxxx | Символ Unicode з 32-бітним шістнадцятковим значенням xxxxxxxx |
13.3 Вставка смайликів
Вставка смайликів або емодзі в текст і код на Python може бути цікавим способом покращити візуальне сприйняття та емоційний зміст повідомлень. Емодзі — це символи Unicode, і їх можна додавати безпосередньо в рядкові дані Python.
Емодзі в Python використовують стандарт Unicode, який включає тисячі символів, в тому числі безліч смайликів. Кожен емодзі має унікальний Unicode номер, що дозволяє вставляти його в текст.
Приклади вставки емодзі
Для вставки емодзі достатньо просто скопіювати його з інтернету і вставити в текст
# Приклад виводу смайлика
print(" 😀 ") # виведе 😀
Приклади вставки емодзі з допомогою Unicode
Для вставки емодзі достатньо знати його код і використати його в рядку з префіксом u:
# Приклад виводу смайлика
print(u"\U0001F600") # 😀
Робота з бібліотеками
Існують бібліотеки, такі як emoji, які спрощують роботу з емодзі:
# Використання бібліотеки emoji
from emoji import emojize
print(emojize(":grinning_face:"))
Емодзі широко використовуються в мобільних і веб-додатках, і Python не виняток. Вони можуть додати зрозумілість та емоційну виразність у чат-боти, форуми, коментарі та інші види користувацького взаємодії.
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ