在Python2中将“\u0000”转换为False,将“\u0001”转换为True

2024-04-28 21:50:02 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在Python2中打印一个类似JSON的字典,我正在使用print(json.dumps(request_dr.data['data'])),但是现在我的控制台的输出是:

{
   "id": 711,
   "username": "esteban@gtt",
   "first_name": "esteban@gtt",
   "last_name": "",

    ... Anothers fields

   "passwordChangedOnce": "\u0001",
   "ldapCheck": "\u0000"
 }

那么,如何将passwordChangedOnce转换为true,将ldapCheck转换为false,以获得如下结果:

{
   "id": 711,
   "username": "esteban@gtt",
   "first_name": "esteban@gtt",
   "last_name": "",

    ... Anothers fields

   "passwordChangedOnce": "true",
   "ldapCheck": "false"
 }

我在Stack Overflow中读到了另一个答案,但还没有成功。谢谢


Tags: nameidfalsetruefieldsdatausernamefirst
1条回答
网友
1楼 · 发布于 2024-04-28 21:50:02

如果您想对值执行搜索和替换,编写对值执行搜索和替换的代码,,这并不是什么新奇或自动的事情

def convertDict(d):
    for (k, v) in d.items():
        if v == '\x00':   # this is the same string that json serializes as "\u0000"
            d[k] = False
        elif v == '\x01': # this is the same string that json serializes as "\u0001"
            d[k] = True
    return d

print(json.dumps(convertDict(request_dr.data['data'])))

相关问题 更多 >