【发布时间】:2022-11-30 00:44:44
【问题描述】:
我正在尝试编写一个脚本来检查文本文件的第一行是否已更改并打印一次该值。它需要是一个无限循环,所以它会一直检查变化。我遇到的问题是当值发生变化时,它会不断打印并且不会检测到新的变化。 我需要的是不断检查第一行的脚本,如果值发生变化则打印一次,如果不发生变化则什么都不做。 到目前为止,这是我尝试过的:
def getvar():
with open('readme.txt') as f:
first_line = f.readline().strip('\n')
result = first_line
return result
def checkvar():
initial = getvar()
print("Initial var: {}".format(initial))
while True:
current = getvar()
if initial == current:
pass
else:
print("var has changed!")
pass
checkvar()
【问题讨论】:
-
查看watchdog
-
我想你只需要在
else块内重新分配initial = current
标签: python if-statement while-loop