2 回答

TA贡献1842条经验 获得超13个赞
尝试这个,
import os, time
import pandas as pd
import glob
path_to_watch = os.path.abspath('C:/Folder for violation csv/')
before = dict ([(f, None) for f in os.listdir (path_to_watch)])
while 1:
time.sleep (2)
after = dict ([(f, None) for f in os.listdir (path_to_watch)])
added = [f for f in after if not f in before]
removed = [f for f in before if not f in after]
if added:
print ("Added: ", ", ".join (added))
for file_ in added:
df = pd.read_csv(os.path.join(path_to_watch, file_))
if removed: print ("Removed: ", ", ".join (removed))
before = after

TA贡献1827条经验 获得超8个赞
首先,最好使用pathlib包来访问文件系统。
使用set收集文件名。
from pathlib import Path
path_to_watch = Path('C:/Folder for violation csv/')
before = set(path_to_watch.glob('**/*'))
while 1:
time.sleep (2)
after = set(path_to_watch.glob('**/*')
added = after - before
removed = before - after
for f in added:
df = pd.read_csv(f)
before = after
添加回答
举报