我正在尝试编写一个函数来验证列表。
基本上,对于列表中的任何给定元素,它前面的项目或它后面的项目都必须相同。
一个好的列表定义为:
good_list = ["H", "H", "H", "M", "M", "L", "L", "M", "M", "H", "H", "H"]
坏列表定义为:
bad_list = ["H", "M", "H", "M", "M", "L", "L", "M", "M", "H", "H", "H"]
我花了几天时间尝试不同的解决方案(并阅读stackoverflow),下面是我目前拥有的,但它没有返回正确的答案。根据反馈(谢谢!),我更新了它并将参数的名称从 list 更改为 season 并将其设为 OR。当它不应该时它仍然返回一个“有效列表”?
bad_list = ["H", "M", "H", "M", "M", "L", "L", "M", "M", "H", "H", "H"]
def check_list(season):
for i, a in enumerate(season):
if season[i] == season[i-1] or season[i] == season[i+1]:
return True
return False
result = check_list(bad_list)
if result == True:
print "Valid list"
else:
print "Invalid list"