Python基本教程07 – 函数
当前位置:以往代写 > Python教程 >Python基本教程07 – 函数
2019-06-14

Python基本教程07 – 函数

Python基本教程07 – 函数

函数最重要的目标是利便我们反复利用沟通的一段措施。

将一些操纵附属于一个函数,今后你想实现沟通的操纵的时候,只用挪用函数名就可以,而不需要反复敲所有的语句。

函数的界说

首先,我们要界说一个函数, 以说明这个函数的成果。

def square_sum(a,b):
    c = a**2 + b**2
    return c

这个函数的成果是求两个数的平方和。

首先,def,这个要害字通知python:我在界说一个函数。square_sum是函数名。

括号中的a, b是函数的参数,是对函数的输入。参数可以有多个,也可以完全没有(但括号要保存)。

我们已经在轮回和选择中见过冒号和缩进来暗示的附属干系。

c = a**2 + b**2        # 这一句是函数内部举办的运算
return c               # 返回c的值,也就是输出的成果。Python的函数答允不返回值,也就是不消return。return可以返回多个值,以逗号脱离。相当于返回一个tuple(定值表)。
return a,b,c          # 相当于 return (a,b,c)

在Python中,当措施执行到return的时候,措施将遏制执行函数内余下的语句。return并不是必需的,当没有return, 可能return后头没有返回值时,函数将自动返回None。None是Python中的一个出格的数据范例,用来暗示什么都没有,相当于C中的NULL。None多用于要害字参数通报的默认值。

函数挪用和参数通报

界说过函数后,就可以在后头措施中利用这一函数

print square_sum(3,4)

Python通过位置,知道3对应的是函数界说中的第一个参数a, 4对应第二个参数b,然后把参数通报给函数square_sum。

(Python有富厚的参数通报方法,尚有要害字通报、表通报、字典通报等,基本教程将只涉及位置通报)

函数颠末运算,返回值25, 这个25被print打印出来。

我们再看下面两个例子

a = 1
def change_integer(a):
    a = a + 1
    return a
print change_integer(a)
print a
#===(Python中 "#" 后头跟的内容是注释,不执行 )
b = [1,2,3]
def change_list(b):
    b[0] = b[0] + 1
    return b
print change_list(b)
print b

第一个例子,我们将一个整数变量通报给函数,函数对它举办操纵,但原整数变量a不产生变革。

第二个例子,我们将一个表通报给函数,函数举办操纵,本来的表b产生变革。

对付根基数据范例的变量,变量通报给函数后,函数会在内存中复制一个新的变量,从而不影响本来的变量。(我们称此为值通报)

可是对付表来说,表通报给函数的是一个指针,指针指向序列在内存中的位置,在函数中对表的操纵将在原有内存中举办,从而影响原有变量。 (我们称此为指针通报)

总结

def function_name(a,b,c):
    statement
    return something  # return不是必需的

函数的目标: 提高措施的反复可用性。

return     None

通过位置,通报参数。

根基数据范例的参数:值通报

表作为参数:指针通报

    关键字:

在线提交作业