第一个结果是5.4 第二个是6.4 为什么不一样呢?
def sum(x):result = 0
for each in x:
if (type(each) == int) or (type(each) == float):
result += each
else:
continue
return result
print(sum())
def sum(x):
result = 0
for each in x:
if (isinstance(each,int) ) or (isinstance(each,float)):
result += each
else:
continue
return result
print(sum())
区别在于True
>>> isinstance(True,int)
True
>>> isinstance(True,bool)
True
>>> type(True)
<class 'bool'>
两种方法判断True会得到不一样的结果
如果你想将True作为数字运算用第二种,如果不想将True用作数字运算就用第一种
页:
[1]