注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

山野阿斌

怎么着,我也是个研究僧了,来点敬业精神好不好?

 
 
 

日志

 
 

Python 函数中的 可变参数 拙见  

2014-06-10 10:52:12|  分类: Python学习 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

1 先来看段错误代码

def calc(numbers):
sum = 0
for n in numbers:
sum = sum + n * n
return sum
print calc(1,3,3,5)

运行出现下面错误:


Traceback (most recent call last):

  File "C:\Users\Administrator\Desktop\新建文本文档.py", line 8, in <module>

    print calc(1,3,3,5)

TypeError: calc() takes exactly 1 argument (4 given)


我们定义了一个函数 calc,其中括号中(numbers)只有一个参数,是固定参数。
             从后面代码中看出应该属于:列表、元组;

              而print calc(1,3,3,5)中有四个参数,所以运行错误。
可以修改最后的print,参加下面代码:

def calc(numbers):
sum = 0
for n in numbers:
sum = sum + n * n
return sum
print calc([1,3,3,5])

运行结果:44.  因为calc函数的()中只有一个参数,而该参数是一个列表或数组形式。
请看下面:

2 可变参数
在Python函数中,还可以定义可变参数。顾名思义,可变参数就是传入的参数个数是可变的,可以是1个、2个到任意个,还可以是0个。
定义可变参数和定义list或tuple参数相比,仅仅在参数前面加了一个*号。


def calc(*numbers):
sum = 0
for n in numbers:
sum = sum + n * n
return sum
print calc(1,3,3,5)

在定义函数时,添加了“*”
  评论这张
 
阅读(14)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017