84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
业精于勤,荒于嬉;行成于思,毁于随。
監視檔案變動,可以使用跨平台的 watchdog 模組,不過可能不支援 Python 3。
在 Linux 平台可以使用 pyinotify 模組。
一個簡單的方法是每隔幾秒鐘檢查一下檔案的 mtime(最後修改時間)(Tornado 使用此法),不過比較耗資源。
mtime
PS: 這些都跟 git 不一樣。 git 有自己的資料庫,裡邊儲存了檔案的上一個版本。你 git status 時它會把目前工作區的文件和它已經儲存的版本進行比對。
git status
PPS: 所以你的需求還沒說清楚。
可以參考 django 或 flask 的 debug 模式,這些都會自動偵測檔案變動,然後重新啟動開發伺服器。不過具體我也沒研究過它們的實作方式,你可以看看它們的原始碼
監視檔案變動,可以使用跨平台的 watchdog 模組,不過可能不支援 Python 3。
在 Linux 平台可以使用 pyinotify 模組。
一個簡單的方法是每隔幾秒鐘檢查一下檔案的
mtime
(最後修改時間)(Tornado 使用此法),不過比較耗資源。PS: 這些都跟 git 不一樣。 git 有自己的資料庫,裡邊儲存了檔案的上一個版本。你
git status
時它會把目前工作區的文件和它已經儲存的版本進行比對。PPS: 所以你的需求還沒說清楚。
可以參考 django 或 flask 的 debug 模式,這些都會自動偵測檔案變動,然後重新啟動開發伺服器。不過具體我也沒研究過它們的實作方式,你可以看看它們的原始碼