[英]How do I convert this dictionary into a list?
说我有这样的字典:
{'AccountNum': '873627867348', 'userID': 'abc'}
{'AccountNum': '873627867348', 'userID': 'def'}
{'AccountNum': '038683828978', 'userID': 'ghi'}
{'AccountNum': '581889263266', 'userID': 'jkl'}
{'AccountNum': '581889263266', 'userID': 'mno'}
{'AccountNum': '581889263266', 'userID': 'pqr'}
我需要将其转换为list
,以便同时打印键和值。 实际上,我正在使用Django作为Web框架。 我需要返回一个列表并将其呈现到我的模板页面,在该页面中,我将在表的行中显示用户ID和accountnum。
首选输出样本:
['AccountNum', '873627867348', 'userID', 'abc']
如果要获取密钥作为列表,请使用:
list( {'AccountNum': '873627867348', 'userID': 'abc'} )
#['AccountNum', 'userID']
对于值:
list( v for k, v in {'AccountNum': '873627867348', 'userID': 'abc'}.items() )
#['873627867348', 'abc']
对彼此而言:
list( {'AccountNum': '873627867348', 'userID': 'abc'}.items() )
#[('AccountNum', '873627867348'), ('userID', 'abc')]
如果您不喜欢使用元组,那么这里的方法要多于一行:
def dictToList(d):
l = []
for k, v in d.items():
l.append(k)
l.append(v)
return l
dictToList({'AccountNum': '873627867348', 'userID': 'abc'})
# ['AccountNum', '873627867348', 'userID', 'abc']
如何使用列表理解:
[a for a in(b for a in data.items() for b in a)]
输入:
data={'AccountNum': '873627867348', 'userID': 'abc'}
输出:
['userID', 'abc', 'AccountNum', '873627867348']
您还可以使用正则表达式,
import re
data={'AccountNum': '873627867348', 'userID': 'abc'}
re.findall(r"\'(.*?)\'", str(data) )
输出:
['userID', 'abc', 'AccountNum', '873627867348']
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.