初学python - 使用迭代查找一个list中最小和最大值,并返回一个tuple

python学习网 2018-10-24 21:08:02

定义 findMinAndMax 函数,首先判断参数是不是list, 然后去掉list 当中不是numeric的object得到一个新的list.

如果这个list 是空的 返回 (None, None)

如果不是空的,就通过迭代的方式取得最大值和最小值, 再返回 tuple(最小值, 最大值)

 

代码如下:

 

def findMinAndMax(L):
	if not isinstance(L, list):
		raise TypeError('Invalid')
	L_num = [ x for x in L if type(x) is int]	
	if len(L_num) == 0:
		return (None, None)
	min = 0
	max = 0
	for i, value in enumerate(L_num):
		if i == 0:
			min = value
		if value < min:
			min = value
		if value > max:
			max = value
	return (min, max)

  

 

 

阅读(2730) 评论(0)