广州专业网站制作平台,大德通众包做网站怎么样,网站建设运营推广,自己做的网站和ie不兼容global语句的作用在编写程序的时候#xff0c;如果想为一个在函数外的变量重新赋值#xff0c;并且这个变量会作用于许多函数中时#xff0c;就需要告诉python这个变量的作用域是全局变量。此时用global语句就可以变成这个任务#xff0c;也就是说没有用global语句的情况下…global语句的作用在编写程序的时候如果想为一个在函数外的变量重新赋值并且这个变量会作用于许多函数中时就需要告诉python这个变量的作用域是全局变量。此时用global语句就可以变成这个任务也就是说没有用global语句的情况下是不能修改全局变量的。在python的函数使用时经常会碰到参数定义的问题。如果不声明全局变量会报错count 1def cc():count count1cc()Traceback (most recent call last):File , line 1, in cc()File , line 2, in cccount count1UnboundLocalError: local variable count referenced before assignment意思是说count为局部变量在使用它之前没有被赋值。在函数内无法直接使用全局变量。num 1id(num)Out[31]: 1886744032def cc():num 2print(id(num))print(num)cc()18867440642可以看出函数里面的num是局部变量有什么办法能在函数内使用全局变量呢根据官方文档可以用global语句1.The global statement is a declaration which holds for the entire current code block. It means that the2.listed identifiers are to be interpreted as globals. It would be impossible to assign to a global variable without global.意思是说global语句可以声明一个或多个变量为全局变量。该声明仅在当前代码块中有效。除此之外没办法访问全局变量。所以在函数中添加global声明def cc():global countcount count1print(count)cc()2用global声明多个变量需要用逗号分隔num 0def cc():global count,numcount count1num num2print(count,num)cc()3 2# 可以函数中的global声明能够修改全局变量numOut[24]: 2#countOut[25]: 3在使用全局变量的场合也可用类变量代替class C:count 3def cc():count C.count1print(count)cc()4如果是想在函数中调用全局变量这需要global声明。之后调用全局变量全局变量的值也随之可能发生改变如果是count count1这种再定义的时候否则全局变量只是被调用。也可以通过class来调用变量的方法达到全局变量的效果global的作用就相当于传递参数在函数外部声明的变量如果在函数内想要使用就用global来声明该变量这样就相当于把该变量传递进来了就可以引用该变量了总结以上就是这篇文章的全部内容了希望本文的内容对大家的学习或者工作具有一定的参考学习价值谢谢大家对我们的支持。如果你想了解更多相关内容请查看下面相关链接本文标题: Python global全局变量函数详解本文地址: http://www.cppcns.com/jiaoben/python/239980.html