设为首页收藏本站

Crossin的编程教室

 找回密码
 立即加入
查看: 9646|回复: 4
打印 上一主题 下一主题

【Python 第42课】 函数的默认参数

[复制链接]

10

主题

0

好友

52

积分

注册会员

Rank: 2

跳转到指定楼层
楼主
发表于 2013-7-25 15:09:08 |只看该作者 |倒序浏览
今天分享一点小技巧。之前我们用过函数,比如:
  1. def hello(name):

  2.    print 'hello ' + name
复制代码
然后我们去调用这个函数:
  1. hello('world')
复制代码
程序就会输出
  1. hello world
复制代码
如果很多时候,我们都是用world来调用这个函数,少数情况才会去改参数。那么,我们就可以给这个函数一个默认参数:
  1.     def hello(name = 'world'):

  2.        print 'hello ' + name
复制代码
当你没有提供参数值时,这个参数就会使用默认值;如果你提供了,就用你给的。


这样,在默认情况下,你只要调用
  1. hello()
复制代码
就可以输出
  1. hello world
复制代码
同样你也可以指定参数:
  1. hello('python')
复制代码
输出
  1. hello python
复制代码
1.jpg

注意,当函数有多个参数时,如果你想给部分参数提供默认参数,那么这些参数必须在参数的末尾。比如:
  1. def func(a, b=5)
复制代码
是正确的
  1. def func(a=5, b)
复制代码
就会出错


#==== Crossin的编程教室 ====#

微信ID:crossincode

QQ群:312723402


面向零基础初学者的编程课

每天5分钟,轻松学编程


回复

使用道具 举报

0

主题

1

好友

273

积分

中级会员

Rank: 3Rank: 3

沙发
发表于 2016-1-8 18:57:09 |只看该作者
get it!
  1. def hello(name='world'):
  2.     print 'Hello, '+name+'!'
  3. hello()
  4. hello('python')

  5. def func(a,b=5):
  6.     print a+b
  7. func(1)
  8. func(1,10)
复制代码
回复

使用道具 举报

2

主题

0

好友

59

积分

注册会员

Rank: 2

板凳
发表于 2016-2-1 09:11:01 |只看该作者
本帖最后由 fangweiren 于 2016-2-1 09:18 编辑
  1. def hello(name ='world'):
  2.         print 'hello ' + name
  3.         
  4. hello()
  5. hello('python')

  6. def func(a,b=5):
  7.         print a+b
  8.         
  9. func(2)
  10. func(2,3)
复制代码
回复

使用道具 举报

0

主题

0

好友

56

积分

注册会员

Rank: 2

地板
发表于 2017-8-16 02:06:20 |只看该作者
先生,最后那里的意思是,假设我想给a添加默认参数,那么形式就是 def func(b,a = 5)
如果不添加就是def func(a,b)这个意思吗?
回复

使用道具 举报

0

主题

0

好友

154

积分

注册会员

Rank: 2

5#
发表于 2017-8-16 09:09:09 |只看该作者
枫叶落时 发表于 2017-8-16 02:06
先生,最后那里的意思是,假设我想给a添加默认参数,那么形式就是 def func(b,a = 5)
如果不添加就是def fu ...

设置参数的时候记得将默认参数放在最后就可以
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

QQ|手机版|Archiver|Crossin的编程教室 ( 苏ICP备15063769号  

GMT+8, 2024-4-20 18:14 , Processed in 0.030890 second(s), 33 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部