猿问
回到首页
个人中心
反馈问题
注册登录
下载APP
首页
课程
实战
体系课
手记
专栏
慕课教程
将工作目录更改为最近生成的目录
有没有办法将目录更改为最近生成的目录?我每 12 小时创建一个新目录,并希望迭代循环最近的 x 个目录。
与此类似但用于目录。
如何使用python获取文件夹中的最新文件
皈依舞
浏览 94
回答 1
1回答
茅侃侃
以下应该基本上有效。import osparent_dir = "." # or whateverpaths = [os.path.join(parent_dir, name) for name in os.listdir(parent_dir)]dirs = [path for path in paths if os.path.isdir(path)]dirs.sort(key=lambda d: os.stat(d).st_mtime)os.chdir(dirs[-1])请注意,这将更改为具有最近修改时间的目录。如果先前存在的目录被修改(通过创建或删除其中的某些内容),则这可能不是最近创建的目录;有关目录创建时间的信息不会存储在任何地方 - 当然,除非您使用反映创建时间的目录命名,在这种情况下,您可以根据名称而不是修改时间进行排序。我在这里并没有费心去防范在运行所需的短时间内创建/删除目录的竞争条件(这可能会导致它引发异常)。老实说,这种情况不太可能发生,如果您想处理这种可能性,只需执行以下操作就足够了:while True: try: #all the above commands break except OSError: pass
0
0
0
打开App,查看更多内容
随时随地看视频
慕课网APP
相关分类
Python
继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续