fatesses 2019-07-14 19:05 采纳率: 50%
浏览 332
已采纳

如何修改这段python代码?

def test(got, expected):
    if got == expected:
        prefix = '正确!'
    else:
        prefix = '错误!'
    print('%s 你的结果: %s 应该返回的结果: %s' % (prefix, repr(got), repr(expected)))

def match_ends(words):
    for item in match_ends:
        if len(item)>2 and item[0]==item[-1]:
            number = number+1
        else :
            continue
    return

test(match_ends(['aba', 'xyz', 'aa', 'x', 'bbb']), 3)
test(match_ends(['', 'x', 'xy', 'xyx', 'xx']), 2)
test(match_ends(['aaa', 'be', 'abc', 'hello']), 1)

其中错误提示是:

TypeError            Traceback (most recent call last)
<ipython-input-59-28f9cc682b29> in <module>
     14     return
     15 
---> 16 test(match_ends(['aba', 'xyz', 'aa', 'x', 'bbb']), 3)
     17 test(match_ends(['', 'x', 'xy', 'xyx', 'xx']), 2)
     18 test(match_ends(['aaa', 'be', 'abc', 'hello']), 1)

<ipython-input-59-28f9cc682b29> in match_ends(words)
      7 
      8 def match_ends(words):
----> 9     for item in match_ends:
     10         if len(item)>2 and item[0]==item[-1]:
     11             number = number+1

TypeError: 'function' object is not iterable

该如何将这个函数更改为可迭代的呢?

  • 写回答

1条回答 默认 最新

  • fatesses 2019-07-14 19:28
    关注

    def match_ends(words):
    number = 0
    for item in words:
    if len(item)>=2 and item[0]==item[-1]:
    number = number+1
    else :
    continue
    return number

    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥50 易语言把MYSQL数据库中的数据添加至组合框
  • ¥20 求数据集和代码#有偿答复
  • ¥15 关于下拉菜单选项关联的问题
  • ¥20 java-OJ-健康体检
  • ¥15 rs485的上拉下拉,不会对a-b<-200mv有影响吗,就是接受时,对判断逻辑0有影响吗
  • ¥15 使用phpstudy在云服务器上搭建个人网站
  • ¥15 应该如何判断含间隙的曲柄摇杆机构,轴与轴承是否发生了碰撞?
  • ¥15 vue3+express部署到nginx
  • ¥20 搭建pt1000三线制高精度测温电路
  • ¥15 使用Jdk8自带的算法,和Jdk11自带的加密结果会一样吗,不一样的话有什么解决方案,Jdk不能升级的情况