python定义一个全局变量,python如何定义全局变量和局部变量

  python定义一个全局变量,python如何定义全局变量和局部变量

  python全局变量的使用:1。使用代码[if I in b : print( % d in list b % I)]引用全局变量;2.用代码[print before func b: ,b]修改全局变量。

  python全局变量的使用:

  一、引用

  使用的全局变量只是一个引用。如果它的值在函数中没有被修改,就不需要添加global关键字。比如:

  #!/usr/bin/python

  a=1

  b=[2,3]

  定义函数():

  如果a==1:

  打印( a: %d %a )

  对于范围(4):中的I

  如果我在b:

  打印(列表b“% I”中的%d)

  else:

  打印( %d不在列表b %i 中)

  if __name__==__main__:

  Func()输出结果:

  可以看出,列表和变量都可以直接引用。

  二、修改

  如果使用的全局变量需要在函数中修改,这就涉及到二义性,比如:

  #!/usr/bin/python

  a=1

  b=[2,3]

  定义函数():

  a=2

  打印在func a:中,a

  b[0]=1

  打印在func b:中,b

  if __name__==__main__:

  打印在func a:之前,a

  打印在func b:之前,b

  函数()

  打印在func a:之后,a

  打印“在func b:之后”,b输出结果:

  可以看出,对于函数func中的变量A, a=2 ,因为存在可以同时意味着引用全局变量A和创建一个新的局部变量的歧义,python指定默认创建一个新的局部变量来消除这种歧义,但对于列表B, b[0]=1 则没有这种歧义。

  所以直接修改全局变量,但是如果改成 b=[3,4],那么b也会变成局部变量。特别是,当在func中的a=2之前添加语句“if a==1:”时,脚本运行不正确,因为该语句引入了一个全局变量,导致语句“a=1”无法创建同名的局部变量。

  所以需要修改全局变量A,可以在 a=2 前加上全局A声明,比如:

  #!/usr/bin/python

  a=1

  b=[2,3]

  定义函数():

  全球a

  a=2

  打印在func a:中,a

  b[0]=1

  打印在func b:中,b

  if __name__==__main__:

  打印在func a:之前,a

  打印在func b:之前,b

  函数()

  打印在func a:之后,a

  打印“在func b:之后”,b输出结果:

  结论:全局变量在引用时不需要被golbal声明,但在修改时需要声明全局变量。特别是,如果您只修改列表、字典等中元素的值。可以直接使用全局变量而不用全局声明。这就是python如何使用全局变量的细节。更多信息请关注热门IT软件开发工作室其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: