python学习-列表-实例1

#优化sum()函数

错误例子

touple = (1,2,3,4,'a',5,'/','1')
sum = 0
for each in touple:
    a = str(each)            # str将所有元素转换成字符串类型,原本是字符串类型的依旧是字符串,因此 '1'与1无法辨别类型,出现错误 
    if a.isdigit() == False:       # 将浮点数也排除了,使得函数只能计算整数加法
        each = 0
        sum = sum + each        # 由于上述判断错误,'1'未被排除,所以出现错误
    else:
        sum = sum + each
print(sum)

改正

def sum(x):
    result = 0
    
    for each in x:
        if (type(each) == int) or (type(each) == float):
            result += each
        else:
            continue

    return result

print(sum([1, 2.1, 2.3, 'a', '1', True]))

sum()函数内参数元素只有两种类型,整型和浮点型,因此只需要判断参数元素是否是这两种类型即可。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • importUIKit classViewController:UITabBarController{ enumD...
    明哥_Young阅读 3,896评论 1 10
  • http://python.jobbole.com/85231/ 关于专业技能写完项目接着写写一名3年工作经验的J...
    燕京博士阅读 7,630评论 1 118
  • 前言 人生苦多,快来 Kotlin ,快速学习Kotlin! 什么是Kotlin? Kotlin 是种静态类型编程...
    任半生嚣狂阅读 26,282评论 9 118
  • 做梦了,就在即将醒来的时候。所以醒来回思记得很清楚。 我倚墙而立,忽然就看到了二叔。二叔依然年轻帅气,麦色的皮肤,...
    草萋萋阅读 163评论 0 0
  • 曾经有那么一段时间,我快要孤独到崩溃,孤独到让我觉得所有的人生意义都崩塌了,找不到一点点活着的生机。那段时间,即使...
    找自己forever阅读 153评论 0 0