为什么if from_unit ==unit[0]
会返回found unit, in
?是不是unit[0]==['cm',0.01]
?这不应该等于in
,对吧?**
以下是我的代码:
def converter(value, from_unit='cm',to_unit='m'):
units = [['m',1],['cm',0.01],['in',0.0254]]
if from_unit != units[0][0]:
print("conver to base unit")
for unit in units[1:]:
if from_unit == unit[0]:
print("found unit ", unit[0])
print(converter(10,'in','cm'))
if from_unit == unit[0]:
只在for
循环达到units[2][0]
时满足。这就是为什么它打印in
而不是cm
from_unit
的值是'in'
,因为第二个参数是显式传递的。如果调用converter(10)
(仅使用一个参数),则from_unit
将是'cm'
相关问题 更多 >
编程相关推荐