我编写了以下函数,在每次迭代后都会更改其参数。
def thresh (*val):
for x in val:
return float(x)/100 * 10000.0
print thresh (15,20)
输出:TypeError: float() argument must be a string or a number
Desired output: 1500.0, 2000.0
感谢您的建议。
答案 0 :(得分:2)
*val
是 list
tuple
。 float()
只能解析str
或float
而非tuples
。
此代码段迭代*val
并返回计算值列表。
def thresh (*val):
return [float(one_val)/100 * 10000.0 for one_val in val]
答案 1 :(得分:1)
您需要迭代val
,因为它有多个值。除以100乘以10000与乘以100相同。
def thresh (*val):
return [x*100.0 for x in val]
>>> print thresh(15,20)
[1500.0, 2000.0]