如何解决有人可以从返回 e.index 部分解释一下吗?
def test(numbers):
e = [int(i) % 2 == 0 for i in numbers.split()]
return e.index(True) + 1 if e.count(True) == 1 else e.index(False) + 1
#问题是确定奇数的索引位置 我理解列表理解部分,但我没有在这里得到布尔部分。如果有人帮助我度过难关,那将是一个很大的帮助。
有人可以帮我退货吗?
解决方法
e
是一个 python list
。 e.index
和 e.count
方法是列表中的实例方法。有关详细信息,请参阅 https://docs.python.org/3/tutorial/datastructures.html#more-on-lists。
list.index(x[,start[,end]])
返回值等于 x 的第一个项目的列表中从零开始的索引。如果没有这样的项目,则引发 ValueError。
可选参数 start 和 end 被解释为切片符号,用于将搜索限制为列表的特定子序列。返回的索引是相对于完整序列的开头而不是开始参数计算的。
list.count(x)
返回 x 在列表中出现的次数。
因此,在您的情况下,e.count(True)
计算 True
在列表中出现的次数。如果只有一个 True
值,则返回该值的索引 + 1。否则,返回第一个 False
值 + 1 的索引。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。