pythonの3つのモジュールをインポートする方法

2534 ワード

転入先https://blog.csdn.net/zhangzheng0413/article/details/9151923
方法1
import modname 

モジュールとは、インタラクティブに使用したり、別のPythonプログラムからアクセスしたりできるコードセグメントです.モジュールをインポートすると、共通の関数、クラス、またはプロパティを参照できます.モジュールは、この方法によって他のモジュールの機能を使用することができる.モジュールをimport文でインポートすると、現在の名前空間(namespace)にモジュールへの参照が確立される.この参照は、全称を使用する必要があります.すなわち、インポートされたモジュールで定義された関数を使用する場合は、モジュールの名前を含める必要があります.したがってfuncnameのみを用いるのではなくmodnameを用いるべきである.funcnameメソッド2
  • from modname import funcname
  • from modname import fa, fb, fc

  • または
    from modname import * 

    第1の方法との違い:funcnameはローカルネームスペースに直接インポートされるので、モジュール名の制限を加える必要がなく、直接使用することができます*は、モジュールのすべての共通オブジェクト(public objects)が現在のネームスペースにインポートされていることを示しています.つまり、そうでない限り」最初のものはすべて導入されます.modnameは定義されていないのでmodname.funcnameという方式は役に立たない.また、funcnameが定義されている場合は、新しいバージョン(インポートモジュールのバージョン)に置き換えられます.funcnameが他のオブジェクトを指すように変更された場合、modnameは気づかない.提案:1)モジュールの属性とメソッドに頻繁にアクセスし、モジュール名を何度も入力したくない場合は、from module import 2)他の属性とメソッドを選択的にインポートしたい場合は、from module import 3)モジュールに含まれる属性とメソッドがモジュールと同じ名前である場合は、名前の競合を回避するためにimport moduleを使用する必要があります4)from module import*をできるだけ少なく使用する必要があります.特殊な関数や属性がどこから来たのかを判定するのは困難で、デバッグや再構築がさらに困難になります.メソッド3の組み込み関数_import__()前の2つのimportキーワードを使用する方法に加えて、組み込み関数__を使用することもできます.import__()を使用してmoduleをインポートします.両者の違いは、importの後に付いているのは1つのタイプ(type)でなければならないが、_import__()のパラメータは、プロファイルからの文字列、式の計算結果からの文字列です.例:
    mymodule = __import__ (’module_name’) 

    注記:1)モジュールの内容はすべて1つのモジュールファイルの中に置いて、例えばmymoduleの内容はPYTHONPATHディレクトリの下の1つのmymoduleに置くべきです.pyでは、C実装を除く2)パケットは、A.bがパケットA内の1つのサブモジュールbがPythonドキュメントに示す例のような1つのサブモジュールを個別にインポートできることを示すように、いくつかのモジュール名空間を組織することができる
    import sound.effects.echo 

    このように、内部のオブジェクトを全称で参照する必要があります.
    sound.effects.echo.echofilter(input, output, delay=0.7, atten=4) 

    次の文を使用してechoサブモジュールをロードすることもできます.
    from Sound.Effects import echo 

    パケット接頭辞なしでも使用できますので、次のように呼び出すことができます.
    echo.echofilter(input, output, delay=0.7, atten=4) 

    1つのパッケージまたはモジュールからimport*ですべてのモジュールをインポートすることは主張しません.これは、通常、読み取りが悪いためです.        from Package import specific_submoduleの使い方は間違いありませんが、実際には、インポートモジュールが他のパッケージの同名サブモジュール(the importing module needs to use submodules with the same name from different packages)を使用する必要がある場合を除き、推奨されています.以上のように、一般的にはimportを使用する必要がありますが、いくつかの例外1)moduleドキュメントはfrom-importの2)でパッケージコンポーネントをインポートすることを示しています.一般的にfrom A.b import cはimport A.b.cより便利で混同の危険を冒すことはありません.