为什么Python嵌套列表转字典时值为列表?如何获取非列表格式值?
问题1:为什么转换后字典的value都被包裹在列表中
你代码里用了列表切片操作k[1:],Python中列表切片的返回值固定为列表类型,哪怕切片后只有1个元素,也会以列表结构返回,所以最终字典的value都被[]包裹。
问题2:如何得到不带列表包裹的value值
直接取子列表索引为1的元素即可,不需要用切片操作,修改后的字典推导式如下:
my_dict = { k[0]: k[1] for k in score }
执行后输出结果为:
{'hamza': 30, 'ali': 20, 'abdul': 50}
如果你的实际场景中部分子列表长度大于2,需要取索引1之后的多个元素,可以根据业务需求调整取值逻辑,比如将多个元素拼接为字符串、求和等,避免直接返回列表即可。
内容的提问来源于stack exchange,提问作者Malik Hamza
相关产品推荐
相关产品推荐

