Что такое __peg_parser__?

Рейтинг: 1Ответов: 1Опубликовано: 25.07.2023

У меня установлен Python 3.9. При исследовании встроенных модулей Python с помощью интерпретатора я обнаружил следующее непонятное явление:

>>> import keyword
>>> keyword.kwlist
['False', 'None', 'True', '__peg_parser__', 'and', ... , 'yield']

Стало интересно, что это за peg_parser.

    File "<stdin>", line 1
      help(__peg_parser__)
           ^
    SyntaxError: You found it!

Может, это пасхалка какая-нибудь? Или от этого пегпарсера есть и практическая польза?

Ответы

▲ 2Принят

peg_parser – это пасхалка (Easter egg) в языке Python.

Если попробовать вызвать help(__peg_parser__) или обратиться к этому атрибуту напрямую, Python вызовет исключение SyntaxError с сообщением "You found it!" («Вы нашли это!»). Это было спрятано разработчиками языка Python как шуточный отклик на попытки исследовать __peg_parser__.