我正在尝试创建一个程序,该程序实时列出目录中的所有文件。如果删除文件,则删除txt文件中的文件名。如果添加了一个文件,则将其添加到txt文件中。
到目前为止,我只需要创建一个列出和导出内容一次的程序。当我使用while(1)循环时,它不会停止创建文件。我还需要它来忽略重复的名称。
您能帮我吗?我的代码如下:
import os
Path = 'Mypath'
arr = os.listdir(Path)
print (arr)
file1 = open ("File.txt","a")
while (1):
for file in arr:
# if file not in file1:
file1.writelines(file + "\n")
答案 0 :(得分:0)
使用轮询的简单解决方案。
如果有更改,请替换整个文件。
import os
import time
path = 'mypath/'
cur_list = None
while True:
new_list = os.listdir(path)
if new_list != cur_list:
cur_list = new_list
with open("File.txt", "w") as f:
f.write('\n'.join(cur_list))
time.sleep(5)