Discuss / Python / 我这是这么写的

我这是这么写的

Topic source

-- coding utf-8 --

#迭代的课后作业 def findMinAndMax(L): from collections import Iterable

#不输取参数时为空
if len(L)==0:
    minnum=None
    maxnum=None
    return(minnum,maxnum)   
#参数一个时,返时一样的
elif len(L)==1 and isinstance(L,Iterable):
    maxnum=L[0]
    minnum=L[0]
    return(minnum,maxnum)  
#判断长度大于1时,才比较大小
elif len(L)>1 and isinstance(L,Iterable):
    maxnum=L[0]
    minnum=L[0]
    for i in L:
        if i>maxnum:
            maxnum=i
        elif i < minnum:
            minnum=i
    return(minnum,maxnum)       

测试

print (findMinAndMax([7, 1]) ) 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('测试成功!')


  • 1

Reply