python全局变量

python的局部变量和全局变量

萝らか妹 提交于 2019-11-27 09:30:45
局部变量 什么是局部变量 通俗定义:函数内部定义的变量就叫局部变量。 话不多说,代码如下: def test1(): a = 300 # 定义一个局部变量a,并初始化300 print("--test1--修改前:a=%s" % a) a = 200 # 给变量a重新赋值200 print("--test1--修改后:a=%s" % a) def test2(): a = 400 # 定义另一个局部变量a,并初始化400 print("--test2--修改后:a=%s" % a) # 分别调用函数test1,test2 test1() test2() 输出: --test1--修改前:a=300 --test1--修改后:a=200 --test2--修改后:a=400 结论: 局部变量就是在函数内部定义的变量。 不同的函数内部可以定义名字相同的变量,但它们不会产生影响。 局部变量的作用,为了临时保存数据需要在需要在函数中定义变量来进行存储。 全局变量 什么是全局变量 定义:如果一个变量既能在一个函数中使用,也可以在其他函数中使用,这样的变量就是全局变量。 代码如下: a = 100 # 定义一个全局变量a,并初始化为100 # 分别定义函数test1、test2,功能是打印变量a的值 def test1(): print(a) def test2(): print(a)

Python20之全局变量和局部变量

你说的曾经没有我的故事 提交于 2019-11-26 17:23:42
一、局部变量和全局变量   局部变量:是指在函数体内定义的变量,作用域只在该函数体内部   全局变量:是指在函数体外定义的变量,作用域是整个代码段 所以在函数体内可以直接访问全局变量而不可以在函数体外访问局部变量 二、在函数体内对全局变量进行修改   在函数体内对全局变量进行修改时,Python程序会自动生成一个与全局变量名一样的局部变量,从而达到对全局变量保护(在函数体内的操作不会改变全局变量的值)的作用,不过 可以在局部变量中使用global关键字,修改全局变量 ,代码如下 1 x = 1 2 def function(): 3 x = 5 4 print(x) 5 6 >>> function() 7 5 8 >>> print(x) 9 1 View Code global关键字 1 x = 1 2 def function(): 3 globals x 4 x = 5 5 print(x) 6 7 function() 8 5 9 >>> x 10 5 View Code 来源: https://www.cnblogs.com/ksht-wdyx/p/11329003.html

Python函数

可紊 提交于 2019-11-25 22:23:50
函数是一段可以重复使用的代码,通过传递的参数返回不同的结果,函数能够提高应用的模块性和代码的重复利用率。 博文大纲: 一、函数 二、变量的作用域 三、内建函数 四、特殊函数——lambda函数 一、函数 Python中的函数都是语句和表达式的集合。函数的用法并没有限制,使用方法就像Python中其他值一样,对于重复使用的代码,需要编写为自定义函数以便于重复使用。 在CentOS 7系统(默认是Python 2.7.5)中实现! 函数可以分为: 无参函数; 有参函数; 1.无参函数 (1)自定义无参函数,语法格式如下: def 函数名称(): 代码块 return 表达式 以关键字def开始,后面跟函数名和小括号,以冒号开头并缩进,最后使用return退出函数,有表达式则传递返回值,没有则返回None。函数是以字母、数字和下划线组成的字符串,但是不能以数字开头。 无参函数的调用语法如下: [变量 = ] 函数名称() 使用赋值运算符“=”可以获得函数的返回值,使用函数是必须先定义再调用,否则程序会出现错误。 实例: [root@localhost ~]# vim 1.py #coding:utf-8 def add(): //定义函数 op1=10 op2=20 rt=op1+op2 print op1,'+',op2,'=',rt return add() //调用函数 [root

python中的函数作用域

旧街凉风 提交于 2019-11-25 19:13:33
1.作用域的介绍:# 也叫名称空间 全局名称空间:创建的储存"变量名与值的关系"的空间叫做全局名称空间 # 局部名称空间:在函数的运行中开辟出来的空间叫做局部名称空间 #并非单指函数,例如在模块中,在类中的简单赋值操作都是局部作用域 内置名称空间:内置名称空间中存放了python解释器为我们储存的的函数,例如len(),print(),list()...都是python为我们创建好的内置函数。 python中的作用域分4中情况: * L : local,局部作用域,函数中定义的变量 * E : enclosing,嵌套的父级函数的局部作用域,即包含此函数的上级函数的局部作用域,但不是全局的(闭包常见) * G : globa,全局变量,是模块级别定义的变量 * B : bulit-in,系统固定模块里的变量,就是内置空间定义的 int(),print(),list() 加载变量的优先级顺序依次是:python内置作用域>当前模块中的全局(文件从上而下读取)>外层作用域>局部作用域 搜索变量的优先级顺序依次是:作用域局部>外层作用域>当前模块中的全局>python内置作用域,也就是LEJB local 和 enciosing 是相对的,enclosing 变量相对上层来说也是 local 内置作用域 : x = int(2.9)# int就是内置作用域。(bulit-in)