4 回答
TA贡献1828条经验 获得超6个赞
将列表传递给set()将返回一个包含列表中所有唯一值的集合。n您可以使用切片表示法使用以下命令获取最后一个值的列表
n = 3
if len(A) >= n and len(set(A[-n:])) == 1:
raise Exception("Lots of the latest integers are similar")
TA贡献1796条经验 获得超7个赞
如果您只想检查最后 3 个,那么就可以了。
limit = 3
if len(set(A[-limit:])) == 1:
raise Exception("Lots of the latest integers are similar")
TA贡献1877条经验 获得超1个赞
您可以使用 collections.Counter() 来计算最后一个元素出现的次数。例如:
occurrences = collections.Counter(A)
if occurrences[A[-1]] >= 3:
raise Exception("Lots of the latest integers are similar")
或者更简单的方法
if A.count(A[-1]) >= 3:
raise Exception("Lots of the latest integers are similar")
**此代码检查列表的任何其他索引中最后一个元素的出现
TA贡献1886条经验 获得超2个赞
lists = [1,4,3,3];
def somewayofcheckingA(lists, a):
lists.reverse()
i = 0
k = lists[0]
count = 0
while i < a:
if(lists[i] == k):
count= count+1
i = i+1
return count
print(test(lists, 3))
其中 lists 是列表,a 是您要检查的次数
这个答案很容易理解并利用了基本的循环和条件语句,我认为你应该在尝试其他建议的解决方案之前掌握这些内容,这些解决方案更像 pythonic,但你可能会迷失在其中。
添加回答
举报