变量范围和全局变量

时间:2016-11-18 04:12:54

标签: python-2.7

全局x表示您正在创建全局变量 或者您将现有的'x'变量指定为全局?

def evaluate_expression_1(x):
    x = x - 3

    def evaluate_expression_2():
        global x
        return x + 7

    return evaluate_expression_2()
# Main Program #
x = 7
print(evaluate_expression_1(x))

输出是14而不是18.这是什么逻辑?

1 个答案:

答案 0 :(得分:0)

使用global x代码行为了得到18,x应为11 没有global x代码行 得到18,x应为14
您应该期望使用此代码减去global x语句为11的答案 global x语句使用稍后定义的x版本 亲眼看看, 在名称为x

的函数后更改名称n