2

次のようなインポートを含むpythonファイルがあります。

from a import z
from b import y
from c import x
# ....  

このモジュールのそれぞれの文字列表現がありますが、すべてのモジュールをリストすることなく、インポートされたすべてのモジュールから文字列表現を取得したいと考えています。要するに、私は次のようなことをしたいfor name in something_to_repr_all_imported_modules ....

4

2 に答える 2

3

これまでにインポートされたすべてのモジュールのマッピングがありsys.modulesます...それがあなたが探しているものかどうかはわかりません...

于 2013-02-18T12:52:09.090 に答える
0

これを行う非常に大雑把な方法は次のようなものです。

>>> import sys
>>> [x for x in locals().keys() if isinstance(locals()[x], type(sys)) and not x.startswith('__')]

結果から sys を除外する必要がありますが、全体像はわかります。

これがあなたが望むものを達成するための最良の方法であるかどうかはわかりませんが、少なくともうまくいくと確信しています.

于 2013-02-18T12:55:24.840 に答える