Python提供了一種非常方便的方法來監(jiān)聽文件內容的改變。我們可以使用Python內置的watchdog庫來實現這個功能。
首先,我們需要安裝watchdog庫。在命令行中輸入以下命令:
pip install watchdog
安裝完成后,我們可以使用watchdog庫中提供的特定類來監(jiān)聽文件內容的改變。
以下是一個簡單的示例程序:
import time
from watchdog.observers import Observer
from watchdog.events import FileSystemEventHandler
class MyHandler(FileSystemEventHandler):
def on_modified(self, event):
if not event.is_directory:
print(f"{event.src_path} 文件被修改了!")
if __name__ == "__main__":
event_handler = MyHandler()
observer = Observer()
observer.schedule(event_handler, path='.', recursive=False)
observer.start()
try:
while True:
time.sleep(1)
except KeyboardInterrupt:
observer.stop()
observer.join()
在上述代碼中,我們創(chuàng)建了一個繼承自FileSystemEventHandler的類MyHandler,并實現了其中的on_modified方法。該方法會在文件被修改時被調用。我們使用Python的print函數來打印出被修改的文件路徑。
接下來,我們創(chuàng)建了一個Observer對象,并將其與MyHandler事件處理程序綁定,并指定需要監(jiān)聽的路徑。
最后,我們啟動了Observer對象,并使用try-except語句來處理退出程序的操作。
在程序運行中,一旦監(jiān)聽的文件內容發(fā)生改變,我們會立刻得到相應的輸出。