为什么程序只获取列表中的第一个数字而忽略其他数字,从而生成一个空列表。
在 for 循环的每个函数中都会发生这种情况。
cars=[23.11,1531,'volvo','BMW']
def price(CAR):
num=[]
strings=[]
for i in CAR:
if isinstance(i,float)or isinstance(i,int):
num.append(i)
elif isinstance(i,str):
strings.append(i)
else:
pass
return num,strings
print(price(cars))
([23.11], [])
答案 0 :(得分:0)
我能想到的唯一原因是,你的return
语句与你的for循环对齐,所以它在第一次迭代后就存在了。 (虽然它现在看起来正确对齐,也许编辑本能地纠正了它。)