在工作中有时候需要会几个人同时操作同一个文件夹,但是我们有不知道哪一个文件被修改过。
这可怎么办呢?
没事儿,这不是有python吗?这可是一门万能语言,除了不会生孩子,什么都会。
那要怎么监控呢?直接上代码吧!
import os,time dict,zdian={},{} path="E:\"#文件路径 def file_state(dict,path):#传入字典参数,传入需要检查的文件路径 file=os.listdir(path) for path1 in file:#获取文件目录 file_path= path path1 if os.path.isfile(file_path)==True:#判断是否是文件 dict[file_path]=os.path.getmtime(file_path) if os.path.isfile(file_path) == False: file_path2 = file_path "" file_state(dict,file_path2)#递归 file_state(zdian,path) while True: time.sleep(3) file_state(dict,path) for i in dict: try: if dict[i]==zdian[i]: pass if dict[i] != zdian[i]: print ( i "有更新") zdian[i] = os.path.getmtime(i) except: print ( i "有更新") zdian[i]=os.path.getmtime(i)
以上就是相关的代码,编程要的是一种方法,一种思维方式,而不是代码本身,这里我的主要思路。
1,想要判断文件是否有更新,主要检查的是文件的修改时间,修改时间变了,那说明文件有被人动过。
2,竟然知道靠什么判断了,那怎么获取?
3,时间能获取到了,那文件呢?文件里面还有文件。
4,我们发现获取文件,以及获取文件对应的修改时间,是具有相同操作性质的,那我们可重复检查文件,直到没有为止。
5,时间,文件都获取到了,怎么判断更新。
6,我们知道字典可以将文件和时间对应起来,文件是没有变动的,那就是它了,以字典的方式储存。
7,然后就是有关字典的操作。