Python之路(六)---> 函数、变量,变量与函数,  Python中的


  Python中的函数和数学上的函数定义是不一样的,从数学的角度上来说函数的定义:给定一个数集A,假设其中的元素为x。现对A中的元素x施加对应法则f,记作f(x),得到另一数集B。假设B中的元素为y。则y与x之间的等量关系可以用y=f(x)表示。我们把这个关系式就叫函数关系式,简称函数。函数概念含有三个要素:定义域A、值域C和对应法则f。其中核心是对应法则f,它是函数关系的本质特征。

  Python中的函数是以def关键字开头,后面接函数标识符和圆括号(),任何传入参数和自变量必须放在圆括号中间,圆括号之间也可以用于定义参数。函数的第一行可以选择性地添加注释,函数内容以冒号起始,并且缩进。return[表达式]结束函数,选择性的返回一个值给调用方,若没有return相当于返回None。

  Python定义函数使用def关键字,一般格式如下:

#函数的格式:#def 函数名(参数列表):#    函数体

  默认情况下,参数值和参数名称是按函数声明中定义的顺序来匹配的。当然我们也可指定。例:

#不指定时def test(x,y,z):     print(x)     print(y)     print(z)test(1,2,3)#执行结果:x=1,y=2,z=3#指定时def test(x,y,z):     print(x)     print(y)     print(z)test(y=1,x=3,z=4)#执行结果:y=1,x=3,z=4

  变量分为全局变量和局部变量。定义在函数内部的变量拥有一个局部作用域,这个变量我们成为局部变量;定义在函数外的拥有全局作用域,这个变量我们称为全局变量。例:

total = 0def sum(num1, num2):    total = num1 + num2      print("局部变量 : ", total)    return totalsum(10, 20)print("全局变量 : ", total)#执行结果:局部变量 :  30#              全局变量 :  0

  当内部作用域想修改外部作用域的变量时,就要用到global和nonlocal关键字了。

  global:修改全局变量,例:

NAME = "alex"
def test():
global NAME
print(NAME)
NAME = "root"
print(NAME)

test()
print(NAME)

#执行结果:

#alex
#root
#root

  nonlocal:修改上一级变量,例:

name = "ton"def test():    name = "jock"    def one1():        nonlocal name        name = "root"    one1()    print(name)print(name)test()#执行结果:#ton#root

Python之路(六)---> 函数、变量

评论关闭