PyTables的复杂迭代

时间:2013-12-13 10:57:28

标签: python pytables

如果有人正在处理Pytables,也许可以给我一个关于这个复杂表达的线索,这个表达不起作用:

hdf5file = openFile("savedTable.h5", mode = 'r')
tab = hdf5file.getNode("/Data")

for i in xrange(1,10):
            result = [result + 1 for x in tab.where("""(col1== 1) & (col2 == 1) & (col3== i) & ((col4 == 1) | (col5 == 1) | (col6 == 1) | (col7== 1))""")]

Spyder给我的是这个典型的消息“语法无效”

特别注意循环“for i in ....”以及查询“...&(col3 == i)”我做不知道这部分是否可以这样做。

1 个答案:

答案 0 :(得分:0)

你是对的,你不能这样做:

for i in xrange(1,10):
    tab.where('col3 == i')

相反,请尝试:

for i in xrange(1,10):
    cond = 'col3 == %d' % i
    tab.where(cond)