Skip to main content
 首页 » 编程设计

python之为什么它显示不同的输出

2025年05月04日12thcjp

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。这不是顺序执行语句吗?还是读取函数中的全部代码,然后开始在线执行函数行?请清除上述程序。提前致谢

请您参考如下方法:

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