検索

ホームページ  >  に質問  >  本文

python - 关于函数调用的问题

def test1():
    a = 1
    b = 2
    
def test2():
    c = 3
    d = c + a
    print(d)
test2

这边想实现下面的test2调用上面test1里面的数据,要怎么实现,使用的是python3
天蓬老师天蓬老师2777日前694

全員に返信(4)返信します

  • 高洛峰

    高洛峰2017-04-18 10:20:48

    まず第一に、あなたの要求は不可能であり、不合理です。2つの別々の関数が相互に内部の変数にアクセスすることは不可能です。

    クロージャを使用すればそれが可能ですが、それがあなたが望んでいることかどうかはわかりません:

    リーリー

    返事
    0
  • 巴扎黑

    巴扎黑2017-04-18 10:20:48

    test1 をクラスにカプセル化できます

    リーリー

    初期化は呼び出したい場所に配置でき、初期化中にデフォルトで test1() メソッドが呼び出されるため、クラス オブジェクトを通じてデータにアクセスできます。

    返事
    0
  • 天蓬老师

    天蓬老师2017-04-18 10:20:48

    test1 に return を使用して a と b の値を返させることができます:

    リーリー

    返事
    0
  • ringa_lee

    ringa_lee2017-04-18 10:20:48

    はは、それらはすべて才能、閉鎖、クラスの封印、明確な復帰であり、上記のそれぞれは独立した解決策です。

    返事
    0
  • キャンセル返事