request.form.items() 的顺序是如何确定的?

How is the order of request.form.items() determinded?

我想将用户输入的值打印到文件中,但每次我再次 运行 时,即使数据相同(或根本没有数据),它们的顺序也不一样。这是我的 .py 文件的一部分:

for key, value in request.form.items():
    data = "%s=%s\n" % (key, shlex.quote(value))
    configfile.write(bytes(data, 'UTF-8'))

这是一个输出的示例:(40 的前 3 行)

 IP=''
 cloud_radio=NO
 TO=''

这是我输入完全相同数据的另一个示例:(同样是 41 行中的前 3 行)

key=''
port2=''
IP=''

是否可以设置它们输出的顺序?或者确保每次的顺序都相同?

在 Python 中 dict 未排序。您可以按键的顺序对项目进行排序:

for key, value in sorted(request.form.items()): 
    ...

如需特定顺序,可指定按键功能sorted