python global问题求助

helen3201 2019-09-02 05:34:38
如下,在主函数中输入数值计算税收,后在函数中加入全局变量,对 my_price 重新赋值
为什么图中两行代码换了一个位置,输出结果会不一样?既然已经全局变量了,不应该都是输出10000吗
菜鸟求助大神,感谢


def calculateTax(price,tax_rate):
total=price+(price*tax_rate)
return total
global my_price
my_price=10000


my_price = float(input("enter a price:"))
totalPrice = calculateTax(my_price,0.06)
print("price= ",my_price,"Total price=",totalPrice)

...全文
83 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
海鸥软件 2019-09-04
  • 打赏
  • 举报
回复
return是结束下面代码运行 直接返回主程序
罗卜基斯 2019-09-03
  • 打赏
  • 举报
回复
def calculateTax(price,tax_rate): total=price+(price*tax_rate) return total global my_price my_price=10000 关键是return,代表已代码已执行完毕,其后代码不执行。你想完成赋值则必须在return之前。

37,721

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧