Я создал скрипт Python для чтения из постоянно обновляемого файла («out.txt») и записи в другой файл («received.txt») каждые 10 секунд. Теперь мне нужно выяснить, как удалить уже прочитанные данные из файла «out.txt». Вот код, который у меня есть до сих пор.
#!/usr/bin/python
import sys
import time
num_lines = sum(1 for line in open('out.txt')) #find the last line
print num_lines
sys.stdout = open('received.txt', 'w') #write to the received.txt file
print
f = open('out.txt', 'r') #open ‘out.txt’ with read permissions
f.readline(num_lines) #read the last line of ’out.txt’
while True: #start loop to print remaining lines in out.txt
for line in f:
print line
time.sleep(10) #sleep for 10 seconds
Я удаляю данные в «out.txt» после цикла или внутри цикла? Должен ли я использовать f.write для этого? Для этого я использую Raspbian на Raspberry Pi. Данные для «out.txt» выглядят так:
iBeacon сканирование...
3F234454-CF6D-4A0F-ADF2-F4911BA9FFA6 1 1 -71 -66
3F234454-CF6D-4A0F-ADF2-F4911BA9FFA6 1 1 -71 -66
3F234454-CF6D-4A0F-ADF2-F4911BA9FFA6 1 1 -71 -66
... постоянно обновляется.
Любой совет будет чрезвычайно полезен. Спасибо!
w+
), он обрежет (удалит все содержимое) файла. - person okoboko   schedule 31.07.2014