函数的返回值与作用域

Posted jiajin-wu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了函数的返回值与作用域相关的知识,希望对你有一定的参考价值。

函数外部的代码要想获取函数的执行结果,就可以在函数里用return语句把结果返回

 1 def stu_register(name, age, course=PY ,country=CN):
 2     print("----注册学生信息------")
 3     print("姓名:", name)
 4     print("age:", age)
 5     print("国籍:", country)
 6     print("课程:", course)
 7     if age > 22:
 8         return False
 9     else:
10         return True
11 registriation_status = stu_register("王山炮",22,course="PY全栈开发",country=JP)
12 if registriation_status:
13     print("注册成功")
14 else:
15     print("too old to be a student.")

注意

  • 函数在执行过程中只要遇到return语句,就会停止执行并返回结果,so 也可以理解为 return 语句代表着函数的结束

  • 如果未在函数中指定return,那这个函数的返回值为None

全局变量与局部变量

1 name = "Alex Li"  #这个就是全局变量,在程序内部是一直能够调用的
2 def change_name():
3     name = "金角大王,一个有Tesla的高级屌丝"  #这个是局部变量,只在函数内能够调用,函数外就还是调用同名name的全局变量
4     print("after change", name)
5 change_name()
6 print("在外面看看name改了么?",name)

》》》after change 金角大王,一个有Tesla的高级屌丝
在外面看看name改了么? Alex Li
函数内也可以强行修改全局变量

1 name = "Alex Li"
2 def change_name():
3     global name #声明一个全局变量,global就是声明全局变量的意思,相当于重新定义了一个全局变量
4     name = "Alex 又名金角大王,爱生活、爱自由、爱姑娘"
5     print("after change", name)
6 change_name()
7 print("在外面看看name改了么?", name)

 

 

以上是关于函数的返回值与作用域的主要内容,如果未能解决你的问题,请参考以下文章

第二模块 3.6 函数的返回值与作用域

笔记:原始值与引用值执行上下文与作用域垃圾回收

JS 作用域及作用域链

JS 作用域及作用域链

JS作用域作用域链

函数的默认值与动态参数arguments的总结