我想编写一个python函数my_sum
,sum
以如下方式扩展python的内置函数:
如果一个序列被传递给my_sum
它,它的行为就像内置的sum
.
如果将多个值传递给my_sum
,则返回这些值的总和。
所需的输出:
my_sum([1, 2, 3]) # shall return 6 (similiar to built-in sum)
my_sum(1, 2, 3) # shall return 6 as well, (sum throws TypeError)
有效的是以下内容。
def my_sum(*x):
try:
return sum(x) # sums multiple values
except TypeError:
return sum(*x) # sums sequence of values
这是完成所需行为的pythonic方式吗?对我来说,代码看起来很奇怪。
UYOU
慕村225694
相关分类