Можно ли получить список ключевых слов в Python?
Я хотел бы получить список всех ключевых слов Pythons в виде строк. Это также было бы весьма изящно, если бы я мог сделать подобное для встроенных функций.
Что-то вроде этого:
import syntax
print syntax.keywords
# prints ['print', 'if', 'for', etc...]
Ответы
Ответ 1
Вы спросили о операторах, показывая ключевые слова в вашем примере вывода.
Если вы ищете ключевые слова, все они перечислены в модуле keyword
:
>>> import keyword
>>> keyword.kwlist
['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif',
'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import',
'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try',
'while', 'with', 'yield']
В keyword.kwlist
doc:
Последовательность, содержащая все ключевые слова, определенные для интерпретатора. Если какие-либо ключевые слова определены только активными, когда действуют конкретные инструкции __future__
, они также будут включены.
Ответ 2
Встроенные функции находятся в модуле с именем __builtins__
, поэтому:
dir(__builtins__)
Ответ 3
Ближайший подход, о котором я могу думать, следующий:
from keyword import kwlist
print kwlist
Стандартный keyword модуль создается автоматически. Для других вещей, связанных с анализом Python с Python, установите языковые службы набор модулей.
Что касается перечисления встроенных функций, я не понимаю, запрашиваю ли вы элементы в модуле __builtin__
или функции этого пакета, которые реализованы непосредственно в интерпретаторе CPython:
import __builtin__ as B
from inspect import isbuiltin
# You're either asking for this:
print [name for name in dir(B) if isbuiltin(getattr(B, name))]
# Or this:
print dir(B)
Ответ 4
>>> help()
help > ключевые слова
Вот список ключевых слов Python. Введите любое ключевое слово, чтобы получить дополнительную помощь.
False def if raise
None del import return
True elif in try
and else is while
as except lambda with
assert finally nonlocal yield
break for not
class from or
continue global pass