如何在Python中循环遍历httprequest的post变量

40 投票
1 回答
46252 浏览
提问于 2025-04-16 01:39

在Django中,如何遍历HttpRequest的post变量呢?

我有

for k,v in request.POST:
     print k,v

但是这个方法不太好使。

谢谢!

1 个回答

112

request.POST 是一个类似字典的对象,里面包含了所有通过 HTTP POST 方式发送的参数。

当你遍历 request.POST 时,你只会得到这些参数的键。

for key in request.POST:
    print(key)
    value = request.POST[key]
    print(value)

如果想要同时获取键和值,可以使用 items 方法。

for key, value in request.POST.items():
    print(key, value)

需要注意的是,request.POST 中每个键可能会有多个值。如果你预期每个键会有多个值,可以使用 lists 方法,这样会把所有的值作为一个列表返回。

for key, values in request.POST.lists():
    print(key, values)

想了解更多信息,可以查看 Django 的文档,关于 QueryDict 的部分。

撰写回答