Python - 比较列表元素并返回值

时间:2015-04-01 08:53:55

标签: python-3.x

如何检查列表中的元素
例如:

>>> l
[1, 2, 3, 4, 1, 2]

我想比较l[0]&对所有元素l[1],如果它们与列表中的任何其他元素匹配,则返回1和2。

2 个答案:

答案 0 :(得分:0)

已修改这可以有效:

numbers = [1, 2, 3, 4, 1, 2]
if numbers.count(numbers[0])-1: print(numbers[0])
if numbers.count(numbers[1])-1: print(numbers[1])
>>>1
>>>2

或者如果您只想比较并返回找到的内容,可以使用collections.Counter()

from collections import Counter
numbers = [1, 2, 3, 4, 1, 2]
number = Counter(numbers)
print(number)
print(str(numbers[0]) + ':' + str(number[numbers[0]]))# item and number of 
print(str(numbers[1]) + ':' + str(number[numbers[1]]))# occurancies
>>>Counter({1: 2, 2: 2, 3: 1, 4: 1})
>>>1:2
>>>2:2

答案 1 :(得分:0)

if l.count(l[0]) > 1 and l.count(l[1]) > 1:
    print l[0], l[1]
elif l.count(l[0]):
    print l[0]
elif l.count(l[1]):
    print l[1]

或列表理解

[i for i in l[:2] if l.count(i) > 1]