Home » Python » Pythonの予約語・キーワードはkeyword.pyに羅列されている

Pythonの予約語・キーワードはkeyword.pyに羅列されている

動作検証バージョン:Windows 11 Home + Python 3.10.6(64-bit)

Pythonの標準ライブラリのひとつkeywordモジュールを使うと、Pythonの予約語・キーワードを簡単に確認できます。

そのソースコードを開いてみたら、ちょっと驚いたので記事にしておきます。

[スポンサードリンク]

keywordモジュールを使って予約語を確認する

Pythonでは以下のようなコードを実行すると、予約語を確認できます。

>>> import keyword
>>> print(keyword.kwlist)

上記のコードを実行すると、以下のように出力されます。

['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

keyrord.pyにキーワードは羅列されてる

これをどうやって実装しているのだろうと疑問に思い、keyword.pyモジュールを開いてみたら、ちょっと驚いたわけです。

以下のように、ただ羅列されているのです。

kwlist = [
    'False',
    'None',
    'True',
    'and',
    'as',
    'assert',
    'async',
    'await',
    'break',
    'class',
    'continue',
    'def',
    'del',
    'elif',
    'else',
    'except',
    'finally',
    'for',
    'from',
    'global',
    'if',
    'import',
    'in',
    'is',
    'lambda',
    'nonlocal',
    'not',
    'or',
    'pass',
    'raise',
    'return',
    'try',
    'while',
    'with',
    'yield'
]

もちろん、さすがにこのリストを手作業で作っているわけではなく、以下のような注意書きもありますが。

This file is automatically generated; please don't muck it up!
To update the symbols in this file, 'cd' to the top directory of
the python source tree and run:
(以後省略)

[スポンサードリンク]

Home » Python » Pythonの予約語・キーワードはkeyword.pyに羅列されている

「Python」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.