python系列教程197

53 阅读2分钟

朋友们,如需转载请标明出处:blog.csdn.net/jiangjunsho…

声明:在人工智能技术教学期间,不少学生向我提一些python相关的问题,所以为了让同学们掌握更多扩展知识更好地理解AI技术,我让助理负责分享这套python系列教程,希望能帮到大家!由于这套python教程不是由我所写,所以不如我的AI技术教学风趣幽默,学起来比较枯燥;但它的知识点还是讲到位的了,也值得阅读!想要学习AI技术的同学可以点击跳转到我的教学网站。PS:看不懂本篇文章的同学请先看前面的文章,循序渐进每天学一点就不会觉得难了!

默认参数允许创建函数可选的参数。如果没有传入值的话,在函数运行前,参数就被赋了默认值。例如,这里有个函数需要一个参数和两个默认参数。

>>>def fa,b=2,c=3): printa,b,c)

...

当调用这个函数的时候,我们必须为a提供值,无论是通过位置参数还是关键字参数来实现。然而,为b和c提供值是可选的。如果我们不给b和c传递值,它们会默认分别赋值为2和3:

>>>f(1)

1 2 3

>>>f(a=1)

1 2 3

当给函数传递两个值的时候,只有c得到默认值,当有三个值传递时,就不会使用默认值了:

>>>f(1,4)

1 4 3

>>>f(1,4,5)

1 4 5

下面是关键字和默认参数一起使用后的情况:

>>>f(1,c=6)

1 2 6

这里,a通过位置得到了1,c通过关键字得到了6,而b,在两者之间,通过默认值获得2。

下面是一个关键字和默认参数在实际应用中稍复杂的例子:

def func(spam,eggs,toast=0,ham=0):     # First 2 required

    print((spam,eggs,toast,ham))




func(1,2)                                # Output: (1,2,0,0)

func(1,ham=1,eggs=0# Output: (1,0,0,1)

func(spam=1,eggs=0# Output: (1,0,0,0)

func(toast=1,eggs=2,spam=3# Output: (3,2,1,0)

func(1,2,3,4)                          # Output: (1,2,3,4)