Python学習ノート--モジュール化


Pythonのモジュール化:各.pyファイルはC++の1つに相当する.cppファイルは、ヘッダファイルがないだけで、直接import.pyファイル.
コードの整理が容易です.
Pythonには2つのimportメソッドがあります.1つは直接import module 1で、もう1つはfrom module 1 import what YouWantOr*です.
例として、module 1とmodule 2はimportされる2つのモジュールであり、module 3とmodule 4はテストモジュールであり、上記の2つのimport方法をそれぞれテストする.
#module1.py
x=10

def func():
    print("This is in module1, x=",x)

#module2.py
x=20

def func():
    print("This is in module2, x=",x)

#module3.py
import module1,module2

module1.x=5
module1.func()

module2.x='a'
module2.func()

#module4.py
from module1 import x,func
from module2 import x,func

x=5

func()

        module3.pyは予想通りの結果が得られるがmodule 4.pyは「This is in module 2,x=20」しか得られず、module 1の情報は得られない.これは、importするいくつかのモジュールに同じ名前のデータがある場合、第2のimportメソッドを使用すると、後importのmoduleのデータが前のimportのmoduleの同名データを上書きするためである.
したがって、第2の方法はお勧めしません.コードを少なくすることができますが、将来に与えるバグの発生リスクはあまりにも大きいです.