Python 迭代os.stat_result中包含的所有结果,并保留描述符

Python 迭代os.stat_result中包含的所有结果,并保留描述符,python,Python,使用导入路径库作为pl, 我有这个: f = pl.Path(fname) fstats = f.stat() print(fstats) 它打印了这个: os.stat_result(st_mode=33206, st_ino=22517998136958185, st_dev=705230555, st_nlink=1, st_uid=0, st_gid=0, st_size=176, st_atime=1621921747, st_mtime=1578950983, st_ctime=1

使用导入路径库作为pl, 我有这个:

f = pl.Path(fname)
fstats = f.stat()
print(fstats)
它打印了这个:

os.stat_result(st_mode=33206, st_ino=22517998136958185, st_dev=705230555, st_nlink=1, st_uid=0, st_gid=0, st_size=176, st_atime=1621921747, st_mtime=1578950983, st_ctime=1578950983)
如何迭代每个结果而不丢失前面的等号描述符(例如“st_模式”)

如果我这样做:

        for st in fstats:
        print(st)
我只得到每个统计中包含的值

如果我将其传递到一个数据帧中,我只会得到一个统计结果的数据帧,没有描述符:

    dfs = pd.DataFrame(data=f.stat())
    print(dfs)
如果我将f.stat()转换为一个列表并将其传递到一个数据帧,它仍然会丢失描述符(如“st_模式”):

输出:

使用
list()

Ex:

dfs = pd.DataFrame(data=[list(f.stat())])

不幸的是,我找不到答案。我不得不解析字符串f.stat():


嗯-这似乎只是跨列而不是跨行排列结果,但仍然没有像“st_模式”这样的关联描述符:
dfs = pd.DataFrame(data=[list(f.stat())])
    fstats = str(f.stat()).replace("os.stat_result(","")
    fstats = fstats.replace(", ", ",")
    fstats = fstats.replace(")", "")
    fstats = re.split(",", fstats)
    #print(fstats)
    for item in fstats:
        fstat = re.split("=", item)
        entry = [fstat[0], fstat[1]]