请使用迭代查找一个list中最小和最大值,并返回一个tuple
分析:
1) 判断输入是否为list
2) 判断list中的元素是否是数字,把类型为整型或者浮点型的元素添加到新的list
3) 判断新的list是否为空,若为空,返回None,None;若非空,用一个循环找出最小最大值
代码实现:
def findMinAndMax(L):
if not isinstance(L,list):
raise TypeError("Parameter should be a list!")
L_new = []
for i in L:
if isinstance(i,int) or isinstance(i,float):
L_new.append(i)
if(L_new == []):
return (None,None)
else:
minV=maxV=L_new[0]
for i in L_new:
if i < minV:
minV = i
elif i > maxV:
maxV = i
return (minV,maxV)