将变量与数组的每个元素进行比较

时间:2016-01-31 09:00:46

标签: python python-3.x

我试图将变量与存储在数组中的值进行比较。数组中的值是从csv文件中提取出来的。如果数组的值等于变量,它将打印出true。

import csv

array=[]

values = csv.reader(open('SampleEEG data Insight-1-30.11.15.17.36.16.csv', 'r'),       
                    delimiter=',',
                    quotechar='|')
for row in values:
    array.append(row[5])

number= 4200

for a in array:
    if number == a:
        print ('True')
print ('False')

代码只比较数组中的一个值并返回false。如何将数组中的所有值与变量进行比较?

4 个答案:

答案 0 :(得分:2)

all功能与列表推导使用

number = 10
array = [1, 2, 3, 4]

print( all(number == a for a in array) )
# False

array = [10, 10, 10, 10]
print( all(number == a for a in array) )
# True

答案 1 :(得分:0)

您可以使用Car - 内置功能

all()

答案 2 :(得分:0)

从我的评论中可以看出,这可能就是你要找的东西:

array=[]

with open('SampleEEG data Insight-1-30.11.15.17.36.16.csv', 'r') as file:
    lines = [line.split() for line in file.readlines()]


for line in lines:
    try:
        array.append(float(line[5]))
    except ValueError:
        pass

number= 4200

for a in array:
    if number == a:
        print ('True')
print ('Done, all checked')

答案 3 :(得分:0)

因为它在达到第一个真值后从循环中退出。使用以下代码:

   for i in array:
        if number == i:
            print ('True')
        else:
            print ('False')