检查列表中的项目以查看它们是否在彼此旁边

时间:2015-09-12 00:11:11

标签: python list python-2.7

``所以我基本上试图查看python列表中的两个项是否彼此相邻。例如,如果我正在查看数字2是否在此列表中的元素旁边。

example_List = [1,2,2,3,4]

它应该返回True。到目前为止我有这个

def checkList(List1):
    for i in range(len(List1 - 1)):
        if list1[i] == 2 and list1[i+1] == 2:
            return True
    return False

我收到错误,错误:不支持的操作数类型 - :' list'和' int'

谢谢!

4 个答案:

答案 0 :(得分:6)

问题出在这一部分:

len(List1 - 1)

您应该将其更改为

len(List1) - 1

你应该对变量List1使用相同的情况。 变化

if list1[i] == 2 and list1[i+1] == 2:

为:

if List1[i] == 2 and List1[i+1] == 2:

答案 1 :(得分:1)

替换

len(List1 - 1)

len(List1) - 1

答案 2 :(得分:0)

首先,你得到的错误是因为

for i in range(len(List1 - 1)):

这应该是

for i in range(len(List1) - 1)):

这是您可以使用的代码示例

def checkList(List1):
    for i in range(len(List1) - 1)):
        if List1(i) == List(i+1):
            return True

答案 3 :(得分:0)

这里也是一个班轮:

def check( l,i ): return i in l and l[-1] != i and l[l.index(i)+1] == i

不可否认,这不是最好的,但我猜仍然比嵌套循环更好