微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

知道何时完成目录复制

我有一个运行在Windows上的Python数据分析应用程序。 我希望用户能够将包含数据文件文件夹复制到“收件箱”文件夹中,此时我的应用程序将开始处理数据。 我的问题是Windows在目录拷贝完成时提供了一个事件

谢谢

如何刮去网站上的所有内容

从Win XP以编程方式从C#中注销用户

在Windows上subprocess.call不启动第二个文件

当QueryPerformanceCounter被调用时会发生什么?

处理C#程序集中的事件

也许有更好的方法来做到这一点,但你可以通过计算文件夹中的文件数量开始,然后等待,直到这个数量有所增加,如下所示:

import glob,os,time directory = os.path.join('inBox','*') #Uses wildcard so ANY files in the 'inBox' directory are used. numFiles = len(glob.glob(directory)) #Gets initial number of files while True: numFilesNew = len(glob.glob(directory)) #Gets current number of files if numFilesNew > numFiles: #Compare current amount of files to initial break #Exit loop if there's an increase else: time.sleep(1) #Wait if no files were added files = glob.glob(directory) #Make a list of filenames in the directory print(files)

对于那些不确定的,glob.glob本质上返回给定目录中的文件列表。

这段代码是用Python 3.4编写的,但是我没有看到它在其他版本中不起作用的原因。

如果你只想要某个扩展名的文件,那么你可以换掉

directory = os.path.join('inBox','*')

对于

directory = os.path.join('inBox','*.png')

但是,当然你可以改变'.png'作为你需要的文件扩展名。 当然,这并不是说所涉及的文件实际上是该格式/类型,只是它具有扩展名。

这是我在这个网站上的第一个答案,希望它有帮助!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐