后端开发|Python教程
Python,全局变量,局部变量
后端开发-Python教程
关于黑客空间源码,ubuntu 主题锁屏,tomcat下面有哪些目录,拖拽编程爬虫,php查询个人记录,seo培训课seo灰帽lzw
全局变量是在函数外部定义和声明的变量,我们需要在函数内部使用它们。
若夏小说源码,Ubuntu无法启动远程,单个tomcat最大并发数,爬虫不叮,php的post和get,refresh seolzw
#这个函数使用全局变量sdef f():print s # 全局作用域s = "I love Python"f()
输出:
党建云平台小程序源码,ubuntu登录不了内网,应用宝评论 爬虫,php图片更换,潮州必应seolzw
I love Python
如果在函数范围内定义了具有相同名称的变量,那么它将仅打印函数内给出的值而不是全局值。
# 这个函数有一个与s同名的变量。def f():s = "Me too." print s # 全局作用域s = "I love Python" f() print s
输出:
Me tooI love Python
在我们调用函数f()之前,变量s被定义为字符串“I love Python”。f()中唯一的语句是“print s”语句。由于没有本地s,将使用全局s的值。
问题是,如果我们改变函数f()内部的s值会发生什么?它会影响全局吗?
我们在下面的代码中测试它:
def f():print s # 如果我们在下面评论,这个程序不会显示错误。 s = "Me too."print s #全局作用域s = "I love Python" f() print s
输出:
Line 2: undefined: Error: local variable s referenced before assignment
为了使上述程序有效,我们需要使用“global”关键字。如果我们想要进行分配/更改它们,我们只需要在函数中使用全局关键字。打印和访问不需要全局。
Python“假设”我们想要一个局部变量,因为f()内部的赋值,所以第一个print语句抛出此错误消息。在函数内部更改或创建的任何变量都是本地的,如果它尚未声明为全局变量。要告诉Python,我们要使用全局变量,我们必须使用关键字“global”
如以下示例所示:
# 这个函数修改全局变量s def f():global sprint ss = "Look for Python" print s #全局作用域s = "Python is great!" f() print s
输出:
Python is great!Look for Python.Look for Python.
一个很好的例子:
a = 1 # 使用global,因为没有本地a def f():print Inside f() : , a #变量“a”被重新定义为局部变量def g(): a = 2 print Inside g() : ,a #使用全局关键字修改全局adef h(): global aa = 3 print Inside h() : ,a # 全局作用域print global : ,a f() print global : ,a g() print global : ,a h() print global : ,a
输出:
global : 1Inside f() : 1global : 1Inside g() : 2global : 1Inside h() : 3global : 3
《Python教学》