【问题标题】:Why it is showing different output?为什么它显示不同的输出?
【发布时间】:2011-07-11 07:22:54
【问题描述】:
x=4    
def func():           

       print("HELLO WORLD")          
       y=x+2    
       x=2    
       print (y)          
       print (x) # OUTPUT IS 6,2,2
       global x  # global declaration is done here
func()   
print (x) # outputs as 2 but why???? why not 4????

为什么它显示输出为 6,2,2。确实,我在全局声明之前进行了打印(x)。但是在全局声明之后我没有更改x值,但是为什么在func()之后将x值打印为2。这不是语句的顺序执行吗?还是它读取函数中的整个代码,然后开始在线执行函数?请清除上述程序。提前谢谢您

【问题讨论】:

  • 请正确格式化您的代码

标签: python


【解决方案1】:

global 关键字向编译器指示该变量将被视为全局变量在整个函数中。它出现在函数中的什么位置并不重要,只要编译器注意到它。

【讨论】:

  • 酷,那我得学习python中的更多概念了。它与c和c++等其他语言完全不同。Python看起来很有趣。
猜你喜欢
  • 2021-08-24
  • 1970-01-01
  • 2018-08-18
  • 1970-01-01
  • 2015-05-06
  • 2023-02-03
  • 1970-01-01
  • 2018-02-27
  • 1970-01-01
相关资源
最近更新 更多