我知道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,但结果是
4条答案
按热度按时间bqucvtff1#
如GST所述,手动将是:
字符串
6tr1vspr2#
然而,我更喜欢让它将os.stat_result转换为JSON对象。我如何才能实现这一点?
如果JSON的意思是有一个带有
st_mode
,st_ino
等键的字典,那么答案是..手动。c0vxltue3#
使用“prevaled”键列表:
字符串
比
k.startswith('st_')
过滤器更长但更快jrcvhitl4#
我知道这篇文章很老了,但我不喜欢任何答案,所以这里是我的函数,可以将stat结果转换为字典(可以通过json.dumps加载):
字符串