其实全局变量与局部变量和c语言当中的定义很相像 这里直接上一个例子来说明
def discounts(price, rate): final_price price * rate # 如果在函数内试图修改全局变量 局部函数内python会自动创建一个新的局部变量 局部范围内不能直接修改全局变量 # 这里如果实在想改变全局变量可以 global old_price # old_price 50 通过global声明变量进行重新赋值 old_price 50 print( 函数内修改全局变量的值 , old_price) return final_price old_price float(input( 请输入原价 )) rate float(input( 请输入折扣 )) new_price discounts(old_price, rate) print( 全局范围内展示全局变量的值 , old_price) print( 打折后的价格是 , new_price)
注释也有说明
如果在函数内试图修改全局变量 局部函数内python会自动创建一个新的局部变量 局部范围内不能直接这样修改全局变量
运行结果



