Проверьте, что данных Json нет в python - PullRequest
1 голос
/ 26 июня 2019

это мой json, может быть тысячи записей данных, которые мы запрашиваем в django rest framework.

{
 "a":1,
 "b":2,
 "c":3,
 .....
}

if request.data['a'] == '':
   return JsonResponse({'error':1})
elif request.data['b'] == '':
   return JsonResponse({'error':1})
elif .....
   .......
else:
   ......

Я хочу проверить, что данные не пустые, как указано выше, если ... еще. мы можем добавить условие if else, но это не позволяет проверить все данные, если еще, пожалуйста. Подскажите, как лучше всего проверить эту строку кода в python.

Ответы [ 4 ]

1 голос
/ 26 июня 2019

Если вы используете модуль json для синтаксического анализа текста ответа json, используя json.loads, то вы можете напрямую получить к нему доступ, например, как диктовку, как показано ниже.

import json
json_data = json.loads(json_text)

for mykey in json_data:
    if json_data[mykey] = "":
        return JsonResponse({'error':1})
    else:
        pass
1 голос
/ 26 июня 2019

Вы можете использовать data.items() для получения ключа и значения И затем вы можете обрабатывать в соответствии с вашими требованиями: -

import json
data = { "a":1, "b":2, "c":3  }
for key,value in data.items():  # Here you will get key and value.
    if value == '':
        return JsonResponse({'error':1})
    else:
        pass 
1 голос
/ 26 июня 2019

вы можете сделать проверку используя цикл

for i in your_dict.keys():
    if your_dict[i] == '':
       do something
    else:
       do other thing
0 голосов
/ 26 июня 2019

Вот простое решение

data = {
    "a": 1,
    "b": 2,
    "c": "",
    "d": ""
}

for key in data:
    if bool(data[key]):
        pass
    else:
        return JsonResponse({"error":1})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...