2024-09-26 18:13:51 发布
网友
我是python和mod\wsgi开发的新手。当我想从POST获取数据时,我读了envron['wsgi.input'],结果我得到了name=username&fullname=name&pass=password。现在我的问题是如何拆分它以获得数组形式的输入。例如读起来像name = arraypost[0]?在
envron['wsgi.input']
name=username&fullname=name&pass=password
name = arraypost[0]
这里我将演示如何在Python3中实现。使用urllib.parse.parse_qs将其转换为列表字典。在
urllib.parse.parse_qs
import urllib.parse post = urllib.parse.parse_qs(environ['QUERY_STRING']) # get value of first instance of POST var 'foo' print(post.get(b'foo',[''])[0])
注意上面get()的用法。第一个参数是字节字符串,第二个参数是默认值。正如我所说,这是一个列表字典,由于我们立即从索引0中获取数据,所以我们希望至少有一个零长度的字符串,这样就不会超出范围。在
get()
您可以拆分数据并将其传递给dict()以创建键、值对的字典:
post_dict = dict([item.split('=') for item in envron['wsgi.input'].split('&')]) print post_dict['name'] print post_dict['fullname'] print post_dict['pass']
这里我将演示如何在Python3中实现。使用
urllib.parse.parse_qs
将其转换为列表字典。在注意上面
get()
的用法。第一个参数是字节字符串,第二个参数是默认值。正如我所说,这是一个列表字典,由于我们立即从索引0中获取数据,所以我们希望至少有一个零长度的字符串,这样就不会超出范围。在您可以拆分数据并将其传递给dict()以创建键、值对的字典:
相关问题 更多 >
编程相关推荐