#python #django #list #dictionary #request
#python #django #Список #словарь #запрос
Вопрос:
У меня есть QueryDict
который я получаю от request.POST
в этом формате:
<QueryDict: {'name': ['John'], 'urls': ['google.com/rnbing.com/rnaskjeeves.com/'], 'user_email': ['john.smith@gmail.com']}>
Почему все значения находятся в списках?
Я сделал dict(request.POST)
Я получил
{'name': ['John'], 'urls': ['google.com/rnbing.com/rnaskjeeves.com/'], 'user_email': ['john.smith@gmail.com']}
Как я могу получить?:
{'name': 'John', 'urls': 'google.com/rnbing.com/rnaskjeeves.com/'`, 'user_email': 'john.smith@gmail.com'}
Ответ №1:
Вы можете использовать понимание списка, чтобы получить первую запись из списков значений;
dd = dict(request.POST)
ddnew = {k:dd[k][0] for k in dd}
Ответ №2:
Вы можете попробовать это
my_dict = dict(request.POST)
my_dict = {k: v[0] for k, v in my_dict.items()}
print(my_dict)
Предположим, что для всех значений словаря есть списки, содержащие только один элемент.