评估数据集中的数字

时间:2014-11-14 02:34:08

标签: python

我正在创建一个程序来评估向量/列表中的每个条目是否在特定值内。我不知道该怎么做。我的想法是这样的:

我有一组看起来像这样的数据:

data = (0,1) , (0,2), (1,1), (1,2) #where data[0] = (0,1) (or data[0][0] = 0 and data[0][1] = 1), data[1] = (0,2) and so on.

此数据无法访问,无法编辑。

所以我想评估第一个值是否在一个范围内,以及第二个值。像这样:

if data[first number >= 10][second number < 1]:
     do something

3 个答案:

答案 0 :(得分:2)

我将如何使用list comprehensions

>>> data = (0,1) , (0,2), (1,1), (1,2)
>>> if [x for x in data if x[0] >= 1 and x[1] < 3 ]:
...  print("ok")
... 
ok

答案 1 :(得分:0)

不确定我是否理解正确,但似乎你有这样的情况:

data = [(0,1), (0,2), (1,1), (1,2)]

for val_1, val_2 in data:
    if val_1 >= 10 and val_2 < 1:
        print('Do sometning')

如果第一个和第二个值符合您的条件,则执行上述操作。

或者您可能想要为2D数据结构的索引(如2D数据结构的行和列)执行if语句,而不是按照以下方式执行:

for row, tuple_ in enumerate(data):
    for col, value in  enumerate(tuple_):
        print(row, col, value)
        if row >=10 and col < 1:
            print('Do sometning')

答案 2 :(得分:0)

Tuples中的

python are immutable,这就是您无法编辑它们的原因。和值为零索引,因此第一个项目中元组的第一个值为data[0][0],第二个值为data[0][0]

data = [(0,1) , (0,2), (1,1), (1,2)]
print data[0][3]

if data[0][0]<10 and data[0][4]<=1:
    print "write code.."