꽤 많이 검색했지만 특정 줄 번호의 CSV 파일에서 데이터를 읽을 수있는 방법을 찾지 못했습니다.python - 마지막 줄에서 csv 파일 읽기
csv 파일은 즉시 업데이트됩니다. 구분 기호는 시간 t1에서 이렇게 탭 공간 , 더 정확하게는 :
1 2 3
5 6 7
8 9 10
11 12 13
14 15 16
시간 t2에서 그것은 내가 콜렉션 (양단 큐)가
1 2 3
5 6 7
8 9 10
11 12 13
14 15 16
17 18 19
인 나는를 추가 할 데이터 coloumn0에서 CSV 파일. 시간 0 : 내가 작성한 코드는이 작업을 수행 할 수있는 순간에
시간 1에서[deque([0, 0, 0, 0, 0], maxlen=5)]
:
[deque(['5', '8', '11', '14','17'])]
시간 : 2에서
[deque(['1', '5', '8', '11', '14'])]
스크립트로 작성한 코드는 원하는 형식으로 읽는 것입니다.
Question:
그러나 어느 시점에서 파일을 다시 열 때 'x'. 내가 한 줄을 읽고 다음 파일로 이동하는 것이
[deque(['8', '11', '14','17','x'])]
하지
[deque(['1', '5', '8', '11', '14'])]
에서 읽을해야하며 가능할까요? 제가 이것을 할 수있게 해주는 도서관이 있습니까?
나는 분명합니까? 또는 나는 약간의 정보를주기 위해 빠져 있습니까?
커티스에서 (그에게 모든 크레딧을) 입력을 취함으로써이 질문에 대한 답을 업데이트 :
perf_his = []
for a in range(len(filename)):
perf_his += [deque([0]*5,maxlen=5)]
for a in range(len(filename)):
lines = open(filename[a]).readlines()[-NUM_LINES:]
mydata = [line.split()[0] for line in lines]
for i in range(0, len(mydata)):
perf_his[a].append(mydata[i])
print perf_his
당신은 적응 고려해 볼 수 있습니다 http://code.google.com/p/을 pytailer/ –
왜 파일을 다시 열 것인지, 왜 파일 핸들을 다시 사용하지 않는지 혼란 스럽습니다. 'x'에서 다시 열려면 'x'행이 필요합니다. 'x'+ 5 행, 1 행은 5 행의 데이터를 읽지 만 'x'의 예는 마지막 행을 표시합니다. dequeue에서 가져 오려는 것이지만 아직 csvreader에서 새 데이터가 검색되면 dequeue에 추가하려고합니다. CSV 파일에 더 이상 추가 할 데이터가 없을 때 어떻게 알 수 있습니까? – sotapme
나는 계속해서 읽어야하는 파일이 여러 개 있습니다. 그러기 위해서는 하나의 파일 핸들러를 닫은 다음 다른 핸들러를 다시 열어야합니다. 권리? 프로그램을 종료하면 csv 파일에 더 이상 데이터가 기록되지 않습니다. – pistal