Оголошення кодування
Оновлено: 28.04.2023
Якщо коментар у першому чи другому рядку сценарію Python відповідає регулярному виразу coding[=:]\s*([-\w.]+), цей коментар обробляється як оголошення кодування; перша група цього виразу називає кодування файлу вихідного коду. Оголошення кодування має з’являтися в окремому рядку. Якщо це другий рядок, перший рядок також має бути рядком лише для коментарів. Рекомендовані форми виразу кодування:
# -*- coding: <encoding-name> -*-
який також розпізнається GNU Emacs і
# vim:fileencoding=<encoding-name>
який розпізнається VIM Брема Муленаара.
Якщо кодування не знайдено, кодуванням за замовчуванням є UTF-8. Крім того, якщо перші байти файлу є позначкою порядку байтів UTF-8 (b'\xef\xbb\xbf''), заявленим кодуванням файлу є UTF-8 (це підтримується, серед інших notepad від Microsoft).
Якщо оголошено кодування, Python має розпізнавати назву кодування (див. Стандартні кодування). Кодування використовується для всього лексичного аналізу, включаючи рядкові літерали, коментарі та ідентифікатори.