python 函数中变量的作用域|疫情期间日更(15)

python 函数中变量的作用域
python的局部变量只在函数内部起作用,出了函数就不起作用了

def discounts(price,rate):
    final_price = price * rate
    return final_price
old_price = float(input("请输入原价:"))
rate = float(input("请输入折扣率:"))
new_price =discounts(old_price,rate)
print("打折后的价格是:", new_price)

输出结果为:

请输入原价:100
请输入折扣率:0.8
打折后的价格是: 80.0

如果我们想输出局部变量final_price,我们试一下

def discounts(price,rate):
    final_price = price * rate
    return final_price
old_price = float(input("请输入原价:"))
rate = float(input("请输入折扣率:"))
new_price =discounts(old_price,rate)
print("打折后的价格是:", new_price)
print(final_price)
输出结果为:
请输入原价:300
请输入折扣率:0.8
打折后的价格是: 240.0

NameError: name 'final_price' is not defined

显示报错说final_price 并没有被定义,像final_price,price,rate这些都是局部变量,一但出了函数就不发挥作用了

发布了18 篇原创文章 · 获赞 12 · 访问量 2234

猜你喜欢

转载自blog.csdn.net/xiaoyun5555/article/details/104680557