BETA

【Python】使うべきではない名前の一覧を取得する

投稿日:2019-05-24
最終更新:2019-05-24

Python では test.py という名前で保存してはいけないというのは有名な話です。
理由は標準の test パッケージを上書きしてしまうからですね。
test --- Python 用回帰テストパッケージ Python 3.7.3 ドキュメント

test の他にも標準で多くの名前空間が使われています。
それらを取得する方法をまとめました。

キーワード(予約語)

keyword --- Python キーワードチェック Python 3.7.3 ドキュメント

print(__import__('keyword').kwlist)  

組み込み関数

組み込み関数 Python 3.7.3 ドキュメント

dir(__builtins__)  

標準&導入済パッケージ/モジュール

pkgutil --- パッケージ拡張ユーティリティ Python 3.7.3 ドキュメント

import pkgutil  
print(sorted(m.name for m in pkgutil.iter_modules()))  

上記全て

和集合を取ってソートしたものを出力

import pkgutil  
keywords = set(__import__('keyword').kwlist)  
builtins = set(dir(__builtins__))  
modules = set(m.name for m in pkgutil.iter_modules())  
print(sorted(keywords | builtins | modules))  

参考

技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
駆け出しエンジニアからエキスパートまで全ての方々のアウトプットを歓迎しております!
or 外部アカウントで 登録 / ログイン する
クランチについてもっと詳しく

この記事が掲載されているブログ

備忘録のようなもの

よく一緒に読まれる記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう
目次をみる
技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
or 外部アカウントではじめる
10秒で技術ブログが作れます!