函数练习
- 编写一个函数,能接受至少两个参数,返回最大值和最小值
- 完成一个函数,可以接收输入的多个数,每一次都能返回到目前为止的最大值、最小值
def getMaxMin(x,y,*iterable):
minval = None
maxval = None
if not isinstance(x,int) or not isinstance(x,int): return
if x>y:
minval,maxval = y,x
else:
minval,maxval = x,y
for i in iterable:
if i>maxval:
maxval = i
elif i<minval:
minval = i
return maxval,minval
def maxminPing():
minarr = None
maxarr = None
while True:
x = input(">>>")
if x.upper()=="Q": return
arr = (int(_) for _ in x.replace(","," ").split())
if minarr==None : minarr = maxarr = next(arr)
maxarr,minarr = getMaxMin(minarr,maxarr,*arr)
print("最大值:{},最小值:{}".format(minarr,maxarr))
maxminPing()

def maxminPing():
minarr = None
maxarr = None
while True:
x = input(">>>")
if x.upper()=="Q": return
arr = x.replace(","," ").split()
if minarr==None and maxarr==None and len(arr) == 1:
minarr = maxarr = arr[0]
else:
minarr = min(*arr,minarr)
maxarr = max(*arr,maxarr)
print("最大值:{},最小值:{}".format(minarr,maxarr))
maxminPing()

递归练习
- 求n的阶乘
- 将一个数逆序放入列表中,例如1234 ==》 [4,3,2,1]
- 解决猴子吃桃问题
- 猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个,第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想吃时,只剩下一个桃子了。求第一天共摘多少个桃子
def factorial(n):
return n if n==1 else n*factorial(n-1)
def factorial2(n,face=1):
if n==1:
return face
else:
return factorial2(n-