#"请使用迭代查找一个list中最小和最大值,并返回一个tuple: "
def findMinAndMax(list):
if len(list)==0:
return (None, None)
minVal = list[0]
maxval = list[0]
for x in list:
if(x>maxval):
maxval=x
if(x<minVal):
minVal=x
return (minVal,maxval)
# 测试
if findMinAndMax([]) != (None, None):
print('测试失败!')
elif findMinAndMax([7]) != (7, 7):
print('测试失败!')
elif findMinAndMax([7, 1]) != (1, 7):
print('测试失败!')
elif findMinAndMax([7, 1, 3, 9, 5]) != (1, 9):
print('测试失败!')
else:
print('测试成功!')
非迭代查找方法:
def findMinAndMax(list):
if len(list)==0:
return (None, None)
list.sort()
if(len(list))==1:
return (list[0],list[0])
else:
return (list[0], list[-1])