我有一个包含多列的文件:
1.000 2.0072 1.000 3.5368 1.000 3.7748
2.000 2.0890 2.000 3.5867 2.000 3.7302
3.000 2.0784 3.000 3.3057 3.000 3.6899
我需要以仅选择满足每列特定条件的行的方式进行过滤,例如,仅选择以下行:
C1 < 1
C2 > 2
C3 == 3
总共有5列,我只需要过滤满足示例三个条件的行。我提出了类似的内容,但同时过滤了所有数据:
k = open ("test.txt", "r")
lines = k.readlines ()
for line in lines:
conv_int = int (lines):
if lines> 1:
print (conv_int)
答案 0 :(得分:0)
让我们弄清楚一些事情:
int
不会像您编写时那样工作,并且由于四舍五入的原因,也不一定是一个好主意。 但是,通过添加一些猜测的工作,您可以将以下内容满足您的需求,希望获得原理并根据更一般的情况来解决问题:
k = open ("test.txt", "r")
lines = k.readlines()
for line in lines:
nums_list = [float(x) for x in line.strip().split(' ') if x != '']
if nums_list[0] < 1 and nums_list[1] > 2 and nums_list[2] == 3:
print(line)
同样,这不会在您的示例中显示任何内容,但是主意应该很清楚。如果没有,请在评论中提出,如果需要,我会澄清。
祝你好运!