Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonスクリプトで使用されるモジュールの検索(modulefinder)


'modulefinder'モジュールのModuleFinderクラスは、特定のスクリプトによってインポートされたモジュールのセットを判別できます。このモジュールには、コマンドラインインターフェイスとプログラムインターフェイスがあります。

機能のデモンストレーションには、次のスクリプトを使用してください

#modfinder.py
import hello
try:
   import trianglebrowser
   import nomodule,mymodule
except ImportError:
   pass

コマンドラインインターフェイス

次のコマンドは、見つかったモジュールと見つからなかったモジュールのリストを表示します。

E:\python37>python -m modulefinder modfinder.py

出力

Name File
---- ----
m __main__ modfinder.py
m hello hello.py
m math
m trianglebrowser trianglebrowser.py

Missing modules:
? mymodule imported from __main__
? nomodule imported from __main__

プログラムインターフェイス

ModuleFinder このモジュールのクラスは、スクリプトによってインポートされたモジュールのセットを判別するためのrun_script()およびreport()メソッドを提供します。

report()

このメソッドは、スクリプトによってインポートされたモジュールとそのパス、および欠落しているか欠落しているように見えるモジュールを一覧表示するレポートを標準出力に出力します。

run_script()

このメソッドは、指定されたファイルの内容を分析します。このファイルには、Pythonコードが含まれている必要があります。

モジュール

これは、モジュール名をモジュールにマッピングする辞書です。

badmodules

ロードできなかったモジュールのリストです。


import modulefinder
modfind=modulefinder.ModuleFinder()
modfind.run_script('modfinder.py')
print ('Modules loaded:')
for k,v in modfind.modules.items():
   print (k,v)
print ('not found:')
for i in modfind.badmodules.keys():
   print (i)

出力

Modules loaded:
__main__ Module('__main__', 'modfinder.py')
hello Module('hello', 'E:/python37\\hello.py')
trianglebrowser Module('trianglebrowser', 'E:/python37\\trianglebrowser.py')
math Module('math')
not found:
nomodule
mymodule

  1. CygwinにPythonモジュールをインストールするにはどうすればいいですか?

    cygwinをインストールするときは、リストからpython/python-setuptoolsをインストールしてください。これにより、「easy_install」パッケージがインストールされます。 easy_installを入手したら、それを使用してpipをインストールできます。次のコマンドを入力します: $ easy_install-a.b pip a.bを、2.7または3.4などのPythonバージョンに置き換える必要があります。これで、pipを使用して必要なモジュールをインストールできます。たとえば、「SomeProject」の最新バージョンをインストールするには: $ pip in

  2. Pythonモジュールはどのように機能しますか?

    Pythonには、定義をファイルに入れて、スクリプトまたはインタープリターのインタラクティブインスタンスで使用する方法があります。このようなファイルはモジュールと呼ばれます。モジュールからの定義は、他のモジュールまたはメインモジュール(トップレベルおよび計算機モードで実行されるスクリプトでアクセスできる変数のコレクション)にインポートできます。 モジュール、たとえば `hello`をインポートすると、インタプリタは入力スクリプトを含むディレクトリでhello.pyという名前のファイルを検索し、次に環境変数PYTHONPATHで指定されたディレクトリのリストを検索します。 fibonacci