LPTHW 笨方法学python 18章
看完18章以后,发现第一个练习中,使用了*args读取全部的的输入参数作为一个元组,但是在他的练习中只给了两个变量去赋值,当用户不清楚这个函数的定义时,就可能会给出过多的变量进这个函数,那么就会出现如下错误:
ValueError: too many values to unpack
也就是所谓的解包错误,给出的值太多了。
那么为了杜绝这种情况,我取巧解决了下。就是我把元组改变成一个列表,然后补了2位进去。
如果他给的变量少了也没关系,我能补齐。可能太搓了,以后有好的思路再来补齐。
def print_two(*args):
all_args = list(args) + [None,None] need_var = all_args[0:2]
arg1,arg2 = need_var print "arg1:%r, arg2: %r" %(arg1,arg2) print_two(1,"hello",3)
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。