呼び出し関数内の変数が呼び出された関数内で見えるように、Python でスコープを管理する方法はありますか? 次のようなものが欲しい
z = 1
def a():
z = z * 2
print z
def b():
z = z + 1
print z
a()
print z
b()
次の出力を取得したい
2
4
2
この問題の本当の解決策は、単に z を変数として渡すことです。私はこれをしたくありません。
私は、さまざまなレベルの専門知識を持つユーザーを含む大規模で複雑なコードベースを持っています。彼らは現在、1 つの変数を渡すように訓練されており、別の変数を追加する必要があります。すべての関数呼び出しで2番目の変数を一貫して渡すとは信じていないので、インターフェイスを維持する代替手段を探しています。これが不可能である可能性は十分にあります。