2017-08-10 24 views
1

python 3を使用して別のスクリプトから変数をインポートするにはどうすればよいですか?別のスクリプトから変数をインポートする方法python 3

例:

私たちはscript_1.pyscript_2.pyを呼ぶ2つのスクリプトを持っています。

script_1.py:

class Calculate(): 
    def addition(): 
     a = 5 
     b = 2 
     c = a + b 

Q:私はこの2番目のスクリプト(script_2.py)を使用することができますどのようにscript_1.pyから変数cを印刷するには?

答えて

0

cはグローバル変数ではなく、additionの外にも存在しないように見えます。あなたのクラスの外に存在していても、メソッド(def addition(self)であるか、または@staticmethodデコレータで宣言する必要があります)は、グローバル変数として宣言されていないので変更しません。

スクリプト1

class Calculate(): 
    @staticmethod 
    def addition(): 
     a = 5 
     b = 2 
     c = a + b 
     return c 

スクリプト2

from script_1 import Calculate 

print(Calculate().addition()) 

ウィル出力cの値(例えば7)。

あなたの場合必要グローバル変数(あなたはほぼ確実にしないでください):

スクリプト1

c = None 

class Calculate(): 
    @staticmethod 
    def addition(): 
     global c 
     a = 5 
     b = 2 
     c = a + b 

スクリプト2

from script_1 import c, Calculate 

Calculate().addition() 
print(c) 

あなたは本当にこれを行うべきではありません。グローバル変数は深刻な問題を引き起こす可能性があります。しかし、グローバルの定数は通常OKです。

関連する問題