从另一个函数更改内部常量函数

时间:2019-04-29 13:56:31

标签: python

我的代码中有2个函数。当我调用第二个函数时,第一个函数计算“ z”并将其与“ m”一起返回。在第二个函数中,我必须首先检查“ z”,如果它小于150,则必须在“ m”上加1并重新计算“ z”。

如何将“ m +1”作为新的“ m”传递给第一个函数,因此当它重新计算“ z”时,它会考虑“ m +1”而不是“ m”?

def r(x, y):
    m = 1
    z = x + y + m
    return m, z


def n():
    m, z = r(3, 4)
    if z < 150:
        m = m + 1
        m1, z1 = r(5, 6)
    print(m, m1, z1)


n()

1 个答案:

答案 0 :(得分:2)

只需将m添加为具有默认值的参数:

def r(x, y, m=1):
    z = x + y + m
    return m, z


def n():
    m, z = r(3, 4)
    if z < 150:
        m = m + 1
        m1, z1 = r(5, 6, m)
    print(m, m1, z1)


n()