使用 pathlib 检索最新文件

Retrieve latest file with pathlib

我主要使用 pathlib 而不是 os 作为路径,但是有一件事我没能在 pathlib 上工作。 例如,如果我需要目录中最新创建的 .csv,我将使用 glob & os

import glob
import os

target_dir = glob.glob("/home/foo/bar/baz/*.csv")
latest_csv = max(target_dir, key=os.path.getctime)

是否有仅使用 pathlib 的替代方案? (我知道您可以使用 Path.glob(*.csv) 生成匹配文件)

您可以通过执行以下操作仅在 pathlib 中实现它:

Path 对象有一个名为 stat() 的方法,您可以在其中检索诸如创建和修改日期之类的内容。

from pathlib import Path

files = Path("./").glob("*.py")

latest_file = max([f for f in files], key=lambda item: item.stat().st_ctime)

print(latest_file)