我正在使用下面的代码来阅读我的csv的最后一行。文件 不断更新,工作得很好。我收到了最后一行 它由11个以逗号分隔的值组成。它就像:
10/16/16,-1,false,4:00:00 PM,4585,.......等等
现在我想以第6列和第9列中的值为例进行存储 作为两个单独的变量,后来将它们用作条件。有没有简单的方法可以在现有代码中添加几行来实现这一点,或者我必须编写一个新代码?
import time, os
#Set the filename and open the file
filename = 'Test.csv'
file = open(filename,'r')
#Find the size of the file and move to the end
st_results = os.stat(filename)
st_size = st_results[6]
file.seek(st_size)
while 1:`enter code here`
where = file.tell()
line = file.readline()
if not line:
time.sleep(0.5)`enter code here`
file.seek(where)
else:
print line, # already has newline
答案 0 :(得分:1)
你当然可以在那里添加几行来获得你想要的东西。我会使用line.split(',')
用逗号分隔每一行。这将返回一个像['10/16/16', '-1', 'false', '4:00:00 PM', '4585' ]
这样的数组。然后,您可以将数组保存在索引6~9处,以方便您使用,稍后在代码中使用它。
例)
while 1:`enter code here`
where = file.tell()
line = file.readline()
if not line:
time.sleep(0.5)`enter code here`
file.seek(where)
else:
arr_line = line.split(',')
var6 = arr_line[6]
var7 = arr_line[7]
var8 = arr_line[8]
var9 = arr_line[9]
# other code ...
print line