Python中的函数(2)

一、实参和形参

      

def greet_user(username):
    """显示简单的问候语,且显示用户名"""
    print("Hello!"+username)
    
greet_user("Joker")

在上面代码中定义函数 greet_user()时,要求给变量username指定一个值。调用这个函数并提供这种信息(人名)时,它将打印带名字的问候语句。

在函数 greet_user() 的定义中,变量username 是一个形参---它表示函数完成其工作所需要的一项信息。在代码 greet_user('Joker') 中,值“Joker”

是一个实参。实参是在调用函数时传递给函数的信息。我们在调用函数时,需要将函数所需的信息放在括号内。在greet_user('Joker')中,将实参

‘Joker’ 传递给了函数greet_user() ,这个值被存储在形参username中。

二、位置实参

调用函数时,Python必须将函数调用中的每个实参都关联到函数定义中的形参。所以,实参与形参最简单的关联方式就是位置关联即实参顺序与形

参顺序一致,这种关联方式叫做位置实参。使用位置实参来调用函数时,如果实参的位置不正确,结果可能出乎意料。

三、关键字实参

def greet_user(username,age):
    """显示简单的问候语,且显示用户名"""
    print("Hello!"+username+",you are " + str(age) + " years old!" )
    
greet_user(age=18,username="Joker")

console:

关键字实参 是传递给函数的 名称-值对。如上面的代码,在调用函数时,在括号内使用A=B的形式 给形参赋值,

A为形参名,B为实参,这样传递参数可以不用关心传递参数的顺序,只需关心名称与值是否对应即可。

四、形参默认值

 编写函数时可以给每个形参指定默认值。

def greet_user(username,age=18):
    """显示简单的问候语,且显示用户名"""
    print("Hello!"+username+",you are " + str(age) + " years old!" )
    
greet_user(username="Joker")

console:

我们给age 指定了默认值 18 ,我们调用时并没有传递age的实参,它也会默认给它18的实参,这就是age的默认值,

所以打印的信息还是和上面打印的信息一样。

五、避免实参错误

如果函数出现实参错误,traceback会指出问题出在什么地方,让我们可以去找到出错的地方进行更正。

def greet_user(username,age=18):
    """显示简单的问候语,且显示用户名"""
    print("Hello!"+username+",you are " + str(age) + " years old!" )
    
greet_user()

console:

因为有Traceback的存在所以可以让我们可以更好的去找到代码中是哪里的错误。

  还没有对象?要不要给你介绍,一款不错的狗粮。

原文地址:https://www.cnblogs.com/tizer/p/10970288.html