一推导式语法:
{key:value for i in xx}
二实例1将列表和序号转换成字典
# 普通转换方法:
li=['a','b','c']
dict1={}
for i,j in enumerate(li):
dict1[i]=j
print("dict1:",dict1)
# 字典推导式
dict2={k:v for k,v in enumerate(li)}
print("dict2:",dict2)
# 通过enumerate直接生成
dict3=print("dict3:",dict(enumerate(li)))
结果展示
dict1: {0: 'a', 1: 'b', 2: 'c'}
dict2: {0: 'a', 1: 'b', 2: 'c'}
dict3: {0: 'a', 1: 'b', 2: 'c'}
三实例2将str中a=b格式转换成字典
"""
cookie_str="ajs_user_id=%220fdcb859347ce3f849313df5a084bbcee0c391f9%22;
ajs_anonymous_id=%22da903fe2-dfbb-4770-b2df-58064a37c84f%22;
JSESSIONID=18AEA6C25F608F187E7869C680576D2D;
atlassian.xsrf.token=BTN1-SQ0E-42CL-I9PD_d8f066510d35184e885469bd5481ae61fbcd1895_lin"
"""
cookie_str="ajs_user_id=220fdcb859347ce3f849313df5a084bbcee0c391f922;" \
"ajs_anonymous_id=22da903fe2-dfbb-4770-b2df-58064a37c84f%22;" \
"JSESSIONID=18AEA6C25F608F187E7869C680576D2D;" \
"atlassian.xsrf.token=BTN1-SQ0E-42CL-I9PD_d8f066510d35184e885469bd5481ae61fbcd1895_lin"
# print(cookie_str.split(";"))
# 字典推导式
res1={i.split("=")[0]:i.split("=")[1] for i in cookie_str.split(";")}
print("字典推导式:",res1)
# 字典推导式结合列表推导式
res2={k:v for k,v in [i.split("=") for i in cookie_str.split(";")]}
print("字典推导式结合列表推导式:",res2)
结果
字典推导式: {'ajs_user_id': '220fdcb859347ce3f849313df5a084bbcee0c391f922', 'ajs_anonymous_id': '22da903fe2-dfbb-4770-b2df-58064a37c84f%22', 'JSESSIONID': '18AEA6C25F608F187E7869C680576D2D', 'atlassian.xsrf.token': 'BTN1-SQ0E-42CL-I9PD_d8f066510d35184e885469bd5481ae61fbcd1895_lin'}
字典推导式结合列表推导式: {'ajs_user_id': '220fdcb859347ce3f849313df5a084bbcee0c391f922', 'ajs_anonymous_id': '22da903fe2-dfbb-4770-b2df-58064a37c84f%22', 'JSESSIONID': '18AEA6C25F608F187E7869C680576D2D', 'atlassian.xsrf.token': 'BTN1-SQ0E-42CL-I9PD_d8f066510d35184e885469bd5481ae61fbcd1895_lin'}
版权声明:本文为sinat_37960022原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。