如何以相同的顺序获得cgi输入变量?

2024-05-15 11:39:34 发布

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

我在python中有一个简单的侦听器,正在等待http post请求:

import cgi
import sys

inputVars = cgi.Fieldstorage()
f.open('test','a')
f.write("how they come in: "+ str(inputVars))

变量以特定的顺序出现。e、 g

FieldStorage(None, None, [MiniFieldStorage('payment_type', 'instant'), MiniFieldStorage('payment_date', 'Wed Jun 29 2016 17:16:32 GMT 0200 (CEST)'), MiniFieldStorage('payment_status', 'Pending')])

但当我在FieldStorage中循环以将数据放入列表时,数据的顺序是不同的:

for item in inputVars:
    f.write(item)
    f.write("\n")

写入(示例):

payment_status
payment_type
payment_date

我怎样才能把这些东西按他们到达邮局时的顺序排列呢?API(paypalipn)需要我返回一个modifies版本的数据,在它进入时的确切顺序。你知道吗

我可以将字符串切碎并构建自己的解析器,但对于这种问题来说,这似乎有点太复杂了。你知道吗


Tags: 数据inimportnonedate顺序typestatus