python中的全局变量与局部变量解读

 更新时间:2024年06月26日 10:53:52   作者:qq_28888837  
这篇文章主要介绍了python中的全局变量与局部变量用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

python中全局变量与局部变量

标签: python

  • 局部变量就是定义在一个函数体内部的变量
  • 全局变量是定义在外面的变量

比如:

a = 1
def f():
    b = 2

其中a就是全局变量,而b是局部变量。局部变量只在函数体内部有效,出了函数体,外面是访问不到的,而全局变量则对下面的代码都有效。

在函数体内部使用全局变量

全局变量可以直接在函数体内容部使用的,你可以直接访问,但是注意的是,如果对于不可变类型的数据,如果在函数里面进行了赋值操作,则对外面的全局变量不产生影响,因为相当于新建了一个局部变量,只是名字和全局一样,而对于可变类型,如果使用赋值语句,同样对外部不产生影响,但是使用方法的话就会对外部产生影响。

如下面的代码:

g_b = 3;g_l1 = [1,2];g_l2 = [1,2,3]
def t1():
    g_b = 2
    g_l1 =[]
    g_l2.append(7)
t1(g_b,g_l1,g_l2)
print(g_b,g_l1,g_l2)

global关键字

上面说到,如果使用的是赋值语句,在函数内部相当于新建了一个变量,并且重新给了指向,但是有时候我们想把这个变量就是外部的那个全局变量,在赋值操作的时候,就是对全局变量给了重新的指向,这个时候可以通过global关键字表示我在函数里面的这个变量是使用的全局那个。

使用方法如下:

g_b = 3
def t1():
    global g_b
    g_b = 2
t1()
print(g_b)

这个时候你会发现全局变量g_b也重新指向了,这是因为global gb表示指定了函数中的g_b就是外面的那个。

python变量命名5大规则

Python变量名不是随便乱起,需要遵循以下规则:

1、只能字母、下划线开头,不能数字开头。变量用小写字母开头是 Python 的惯例,也是编码的好习惯,大家要养成好习惯哟。

大家可以动手试试上面4个变量名哪个是正确的,尝试打开编辑器定义变量输出,看看有什么提示。

实际上面4个变量名,只有第一个变量名是正确的,后面3个都是错误的。如果运行,将会有如下类似的错误提示:

2、变量名不能有空格,可以用下划线;

3、Python内置的关键字和函数不能用,比如说if、for、while、print、input等等;

4、变量名称对大小写敏感,比如:myname和myName不是同一个变量;

5、小写字母l和大写字母O尽量不要用于变量名,容易看成数字1和0 。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 在Django下创建项目以及设置settings.py教程

    在Django下创建项目以及设置settings.py教程

    今天小编就为大家分享一篇在Django下创建项目以及设置settings.py教程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • Python自动化运维之Ansible定义主机与组规则操作详解

    Python自动化运维之Ansible定义主机与组规则操作详解

    这篇文章主要介绍了Python自动化运维之Ansible定义主机与组规则操作,结合实例形式分析了自动化运维工具Ansible定义主机与组规则相关配置操作与注意事项,需要的朋友可以参考下
    2019-06-06
  • 使用Python去除字符串中某个字符的多种实现方式比较

    使用Python去除字符串中某个字符的多种实现方式比较

    python中字符串是不可变的,所以无法直接删除字符串之间的特定字符,下面这篇文章主要给大家介绍了关于使用Python去除字符串中某个字符的多种实现方式比较的相关资料,需要的朋友可以参考下
    2022-06-06
  • Python机器学习应用之工业蒸汽数据分析篇详解

    Python机器学习应用之工业蒸汽数据分析篇详解

    本篇文章介绍了如何用Python进行工业蒸汽数据分析的过程及思路,通读本篇对大家的学习或工作具有一定的价值,需要的朋友可以参考下
    2022-01-01
  • python实现名片管理器的示例代码

    python实现名片管理器的示例代码

    这篇文章主要介绍了python实现名片管理器的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • Python库urllib与urllib2主要区别分析

    Python库urllib与urllib2主要区别分析

    这篇文章主要介绍了Python库urllib与urllib2主要区别,需要的朋友可以参考下
    2014-07-07
  • Pandas数据分析常用函数的使用

    Pandas数据分析常用函数的使用

    本文主要介绍了Pandas数据分析常用函数的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01
  • python判断集合的超集方法及实例

    python判断集合的超集方法及实例

    在本篇内容里小编给大家分享的是一篇关于python判断集合的超集方法及实例内容,有兴趣的朋友们可以学习下。
    2021-05-05
  • python selenium循环登陆网站的实现

    python selenium循环登陆网站的实现

    这篇文章主要介绍了python selenium循环登陆网站的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-11-11
  • 教你如何使用Python实现二叉树结构及三种遍历

    教你如何使用Python实现二叉树结构及三种遍历

    什么是二叉树:每个节点最多有两个子树的树结构,通常子树被称作“左子树”(left subtree)和“右子树”(right subtree) 二叉树由两个对象组成,一个是节点对象,一个是树对象,需要的朋友可以参考下
    2021-06-06

最新评论