list.reverse不返回列表?
返回对象的名称None
为list.reverse()
。因此,当我致电时,此代码将失败solution(k)
。我有什么办法可以解决临时问题吗?还是我应该怎么做?
fCamel = 'F'bCamel = 'B'
gap = ' '
k = ['F', ' ', 'B', 'F']
def solution(formation):
return ((formation.index(bCamel) > (len(formation) - 1 - (formation.reverse()).index(fCamel))))
ps这是我在python中的第一个代码。我认为这是功能。
回答:
您可以使用reversed(formation)
返回的反向迭代器formation
。调用时,formation.reverse()
它会在列表中进行原位反转,并返回None。
编辑:
我知道您现在正在尝试执行的操作,在我看来,仅凭列表理解就可以轻松完成此操作:
def solution(formation): return len([k for k in formation[formation.index(bCamel)+1:] if k == fCamel]) == 0
这基本上是在第一个元素之后查看所有元素,bCamel
并收集所有具有该值的元素fCamel
。如果该列表的长度== 0,则有解决方案。
以下是一些示例:
>>> k = ['F','F','B','B','F']>>> solution(k)
False
>>> k = ['F','F','B','B','B']
>>> solution(k)
True
>>> k = ['F','F','B','F','F','B','B']
>>> solution(k)
False
>>>
以上是 list.reverse不返回列表? 的全部内容, 来源链接: utcz.com/qa/402847.html