У меня запущен скрипт BASH, который открывает программу (tshark), которая записывает набор значений в лог-файл. Затем сценарий подсчитывает уникальные значения и записывает (количество) уникальных значений за последние 3 минуты в файл журнала (count3m.log). Он также открывает сценарий Python. Питон показывает окно со значениями из count3m.log. Поскольку значение в count3m.log меняется каждые 30 секунд, я хочу продолжать искать новое значение из count3m. Я попробовал это с кодом ниже. Он выполняет цикл только один раз. Что я делаю не так?
#!/usr/bin/env python
import sys
import re
import time
from Tkinter import *
while True:
root = Tk()
count3m = open('count3m.log','r')
countStart = open('countStart.log','r')
minutes = Label(root, text="Uniq signals < 3m ago:")
minutes.grid(row=0, column=0)
minutes = Label(root, text=count3m.read())
minutes.grid(row=1, column=0)
count3m.close
minutes = Label(root, text="Uniq signals since start:")
minutes.grid(row=0, column=1)
minutes = Label(root, text=countStart.read())
minutes.grid(row=1, column=1)
countStart.close
time.sleep(5)
print "test"
root.mainloop()
root.mainloop()
, он практически останавливается.root.mainloop()
создает экземпляр Tkinter, и в этот момент ваша программа полностью ожидает возникновения события, не продолжая выполнять код. - person MrAlexBailey   schedule 24.04.2015root.mainloop()
? Я думаю, что это может быть зависание вашего цикла (бесконечный цикл внутри бесконечного цикла). - person m0dem   schedule 24.04.2015