gpt4 book ai didi

json - 如何将 os.stat_result 转换为对象的 JSON?

转载 作者:行者123 更新时间:2023-12-03 14:01:31 25 4
gpt4 key购买 nike

我知道json.dumps可用于将变量转换为 JSON 表示。可悲的是python3的类的转换os.stat_result是一个由表示类实例值的数组组成的字符串。

>>> import json
>>> import os
>>> json.dumps(os.stat('/'))
'[16877, 256, 24, 1, 0, 0, 268, 1554977084, 1554976849, 1554976849]'

然而,我更愿意让它转换 os.stat_result被转换为 JSON 对象。 我怎样才能做到这一点?

看来麻烦的是 os.stat_result没有 .__dict__事物。

看到这样的结果:
 >>> import os
>>> str(os.stat('/'))
'os.stat_result(st_mode=16877, st_ino=256, st_dev=24, st_nlink=1, st_uid=0, st_gid=0, st_size=268, st_atime=1554977084, st_mtime=1554976849, st_ctime=1554976849)'

让我希望有一种快速的方法可以将 python 类实例(例如`os.stat_result”)转换为作为对象的 JSON 表示。

虽然是 JSON,但结果是

最佳答案

正如 gst 所提到的,手动将是这样的:

def stat_to_json(fp: str) -> dict:
s_obj = os.stat(fp)
return {k: getattr(s_obj, k) for k in dir(s_obj) if k.startswith('st_')}

关于json - 如何将 os.stat_result 转换为对象的 JSON?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55638905/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com