为了账号安全,请及时绑定邮箱和手机立即绑定

python 的基础问题?

python 的基础问题?

慕沐2310975 2016-07-12 00:14:41
def average(*args):for i in args:     print i     print average()print average(1, 2)print average(1, 2, 2, 3, 4)不针对任务,只是想问为什么这里没办法输出?
查看完整描述

3 回答

已采纳
?
清波

TA贡献165条经验 获得超90个赞

一般来说, Python 的函数可以 不显式 的指定返回值, 也就是说 函数可以没有 return 语句(这里不讨论 yield),这时候Python 会默认该函数的返回值为 None, 题主的问题就是这个范畴, 所以 题主的 print 语句就等于 print None 也就没什么有意义的输出了, 只是 函数中的输出 和 None。 如果 mooc 的编辑器中没有输出, 这不代表什么呢, 是错误验证把题主的输出给屏蔽了, 可以在本机上实验。

## 对于函数返回 None 的解释, 有两种情况 

def func_name(args):
    pass
    
def func_name1(args):
    return
    
## 以上, 1 函数中没有return , 2 return 不带参数。


查看完整回答
反对 回复 2016-07-12
?
飞翔32993

TA贡献14条经验 获得超4个赞

def average(*args):
    for i in args: 
        print i 
    

print average()

print average(1, 2)

print average(1, 2, 2, 3, 4)

#输出结果如下:
None
1
2
None
1
2
2
3
4
None

这是运行你的代码和执行结果,没有明白你说的没办法输出什么意思啊?

查看完整回答
反对 回复 2016-07-12
?
李鑫鑫lxx

TA贡献5条经验 获得超0个赞

你想要什么答案?

查看完整回答
反对 回复 2016-07-12
  • 3 回答
  • 0 关注
  • 1722 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信