Преобразовать "\ u0000" в False и "\ u0001" в True в Python2 - PullRequest
0 голосов
/ 26 марта 2020

Я печатаю словарь типа JSON в Python2, я использую 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"
 }

Я прочитал другие ответы в переполнении стека, но у меня не было успеха. Спасибо

1 Ответ

1 голос
/ 26 марта 2020

В этом нет ничего фантастического или автоматического c - если вы хотите выполнить поиск и замену значений, напишите код, который выполняет поиск и замену значений .

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'])))
...