马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
Python 课后作业详解 016:序列!序列!
0. 猜想一下 min() 这个BIF的实现过程
其实很简单的,只要设置一个变量(这里方便称呼,设为x)用于存放最小值,
然后遍历列表,如果遍历到的值比x小,则x = 遍历到的值(x默认为列表第一个元素)
BUT,当时我是怎么想的呢?
直接排个序,然后返回第一个就好:
def min(seq):
# 万一是元组就不好说了,这里先转换为列表
temp = list(seq)
temp.sort()
return temp[0]
print(min((5,7,9,3,2,1,6)))
1. 视频中我们说 sum() 这个BIF有个缺陷,就是如果参数里有字符串类型的话就会报错,
请写出一个新的实现过程,自动“无视”参数里的字符串并返回正确的计算结果。
这个咋子弄呢?
直接遍历给的参数,然后判断类型(type或isinstance)就好了。
def Sum(seq):
res = 0
for each in seq:
if type(each) == str:
continue
res += each
return res
print(Sum([1,2,3,"4",5,6,7,8,9]))
|