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

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

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器