[英]list from findall to a dict
我有一些看起來像這樣的數據:
<subject="execute_and_get_modifiers"\><command="send_key"\><normalkey="b"\><modifier="0"\>
我有一個正則表達式可以很好地找到項目..像這樣
p = re.compile('<([\w]+)="([\w\d]+)"')
self.data = dict(p.findall(request))
看起來像:
{'modifier': '0', 'normalkey': 'b', 'command': 'send_key', 'subject': 'execute_and_get_modifiers'}
真正的關鍵是:價值對。 那么我如何訪問說self.data ['modifier']呢?
我嘗試對self.data中的鍵,值進行處理:但是我收到“ ValueError:要拆包的值太多”-但是每個字典項都有兩個項,對嗎?
現在輕松點-我知道我是個傻瓜,但無法弄清楚為什么。
您的for聲明應為:
for key, value in self.data.items()
更好的是:
for key, value in self.data.iteritems()
當遍歷這些對時,應該使用iteritems()而不是items()來節省內存。 items()將在內存中建立(鍵,值)對的列表,而iteritems()將返回鍵值對的視圖,您可以在恆定的內存空間中對其進行迭代。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.