Discuss / Python / 这个为什么答案都对显示测试错误啊

这个为什么答案都对显示测试错误啊

Topic source

def product(numbers): s=1 for i in numbers: s=si return s

product(5) = 5 product(5, 6) = 30 product(5, 6, 7) = 210 product(5, 6, 7, 9) = 1890 测试失败!

一九一阿

#2 Created at ... [Delete] [Delete and Lock User]

由于函数定义的参数并不是可变参数(可变参数前应加上‘’),故在测试的时候应先组装出一个list或者tuple 即为: print((5)) 或者 print([5]); 在函数定义时改为 def product(number) 测试时候就可以直接 print(5) 不需要先组装list或者tuple

一九一阿

#3 Created at ... [Delete] [Delete and Lock User]

。。。。这个回复格式有点看不懂 中间红色字体和我发出去的不一样 - -。 意思就是你的定义number不是可变参数 所以测试的时候要加小括号或者中括号 也可以把函数定义改一下 在number前加上星号 这样就变成了可变参数,测试就可以不加括号了!

Xxx_gt_ye

#4 Created at ... [Delete] [Delete and Lock User]

我也是这样的结果,而且的我的函数(*x)也设置的是可变参数。 应该是最后的else的异常处理有问题

老哥稳002

#5 Created at ... [Delete] [Delete and Lock User]

应该是这样的吧,作者好像写反了。 else: try: product() print('测试成功!') except TypeError: print('测试失败!')

要规避输入为空的情况


  • 1

Reply