Python函数

函数使我们可以创建一组可以在需要时运行的指令。

功能是必不可少的Python以及在许多其他编程语言中创建有意义的程序,因为它们使我们能够将程序分解为可管理的部分,从而提高了可读性和代码重用性。

这是一个示例函数,称为hello打印“你好!”:

def hello():
    print('Hello!')

这是功能定义。有一个名字(hello)和主体(一组指令),这是跟在冒号后面的部分,在右边向右缩进一层。

要运行此功能,我们必须调用它。这是调用该函数的语法:

hello()

我们可以一次或多次执行此功能。

函数的名称,hello, 非常重要。它应该是描述性的,因此任何调用它的人都可以想象该函数的作用。

一个函数可以接受一个或多个参数:

def hello(name):
    print('Hello ' + name + '!')

在这种情况下,我们调用传递参数的函数

hello('Roger')

我们称之为参数函数在函数定义内接受的值,以及论点调用函数时传递给函数的值。对这种区别感到困惑是很常见的。

如果未指定参数,则参数可以具有默认值:

def hello(name='my friend'):
    print('Hello ' + name + '!')

hello() #Hello my friend!

这是我们如何接受多个参数的方法:

def hello(name, age):
    print('Hello ' + name + ', you are ' + str(age) + ' years old!')

在这种情况下,我们调用传递一组参数的函数:

hello('Roger', 8)

参数通过引用传递。 Python中的所有类型都是对象,但其中一些是不可变的,包括整数,布尔值,浮点数,字符串和元组。这意味着,如果将它们作为参数传递,并且在函数内部修改了它们的值,则新值不会反映在函数外部:

def change(value):
    value = 2

val = 1 change(val)

print(val) #1

如果传递了一个不可变的对象,并且更改了其属性之一,则更改将反映在外部。

函数可以使用return陈述。例如,在这种情况下,我们返回name参数名称:

def hello(name):
    print('Hello ' + name + '!')
    return name

当功能满足时return语句,函数结束。

我们可以忽略该值:

def hello(name):
    print('Hello ' + name + '!')
    return

我们可以在条件内部包含return语句,这是在不满足开始条件的情况下结束函数的常用方法:

def hello(name):
    if not name:
        return
    print('Hello ' + name + '!')

如果调用该函数传递的值等于False,就像一个空字符串一样,该函数在到达print()陈述。

您可以使用逗号分隔的值来返回多个值:

def hello(name):
    print('Hello ' + name + '!')
    return name, 'Roger', 8

在这种情况下,hello('Syd')返回值是一个包含这三个值的元组:('Syd', 'Roger', 8)


更多python教程: