1、直接转:

要求列表中的每个元素是 长度为2的元组  或 长度为2的列表

    l1 = [(1, 'a'), (2, 'b'),(3, 'c'), (4, 'd')]print(dict(l1))# {1: 'a', 2: 'b', 3: 'c', 4: 'd'}l2= [['key1', 'value1'], ['key2', 'value2'], ['key3', 'value3']]print(dict(l2))# {'key1': 'value1', 'key2': 'value2', 'key3': 'value3'}

2、zip函数

要求:两个列表,分为长度相同和长度不同

    #长度相同l1 = [1, 2, 3, 4]l2 = ['a', 'b', 'c', 'd']print(dict(zip(l2, l1)))# {'a': 1, 'b': 2, 'c': 3, 'd': 4}#长度不同用ZIPl1 = [1, 2, 3, 4, 5, 6, 7]l2 = ['a', 'b', 'c', 'd']print(dict(zip(l2, l1)))# {'a': 1, 'b': 2, 'c': 3, 'd': 4}#长度不同用zip_longestfrom itertools import zip_longestl1 = [1, 2, 3, 4, 5, 6, 7]l2 = ['a', 'b', 'c', 'd']print(dict(zip_longest(l1, l2)))# {1: 'a', 2: 'b', 3: 'c', 4: 'd', 5: None, 6: None, 7: None}print(dict(zip_longest(l2, l1)))# {'a': 1, 'b': 2, 'c': 3, 'd': 4, None: 7}

3、用enumerate

考虑是列表元素下标Index做key还是做value;

如果做Key的话直接enumerate,如果做value的话,遍历依次写进字典;

    #index做为keyl1=['a','b','c','d']print(dict(enumerate(l1)))#{0: 'a', 1: 'b', 2: 'c', 3: 'd'}#index作为value,列表元素作为keyd={}for index,val in enumerate(l1):d[val]=indexprint(d)#{'a': 0, 'b': 1, 'c': 2, 'd': 3}

4、字典扩展式

将列表元素转换成字典的key,value写死

l1=[1,2,3,4]
d1={k:"a" for k in l1}
print (d1)
#{1: 'a', 2: 'a', 3: 'a', 4: 'a'}

5、dict.fromkeys()

列表元素转换为字典的key,value写死

l1=['red','blue','orange']
d1=dict.fromkeys(l1,"colors")
print (d1)
#{'red': 'colors', 'blue': 'colors', 'orange': 'colors'}

6、d.update(sub_d)

每个列表元素是字典对象

l1=[{1:'a',2:'b'},{3:'c',4:'d'}]
d1={}
for i in l1:d1.update(i)print (d1)
# {1: 'a', 2: 'b', 3: 'c', 4: 'd'}

python列表转字典相关推荐

  1. python 列表、字典转json字符串

    python 列表.字典转json字符串 代码 import json data1 = [ { 'a' : 1, 'b' : 2, 'c' : 3, 'd' : 4, 'e' : 5 } ] data ...

  2. python列表生成字典_Python 列表生成式 字典生成式

    Python 列表生成式 & 字典生成式 通过生成式可以更加简洁地生成列表和字典 列表生成式 对比 直接生成数据后加入列表示例: user_list = list() for i in ran ...

  3. Python列表,元组,字典的区别

    Python列表,元组,字典的区别: 1.元组是不可变的, 而列表.字典是可变的.元组是不可变对象,对象一旦生成,它的值将不能更改:列表是可变对象,对象生成后,可以对其元素进行更改.添加.删除.清空. ...

  4. python列表、字典、元组的用法及区别_python列表,字典,元组简单用法示例

    本文实例讲述了python列表,字典,元组简单用法.分享给大家供大家参考,具体如下: 列表 #_*_ coding:utf-8 _*_ # 列表,定义在方括号的形式中,可以进行切片操作. #它没有固定 ...

  5. python列表元组字典集合实验心得_python学习小总结(列表、元组、字典、集合、字符串)...

    ---恢复内容开始--- 一.列表(list) 1.添加 append():追加,在列表末尾添加元素. 列表名.append(添加的元素) extend():扩展,在列表末尾添加元素. 列表名.ext ...

  6. 1.3 Python列表、字典、集合和JSON四种数据类型

    Applications of Deep Neural Networks with Keras 基于Keras的深度神经网络应用 著:Jeff Heaton 译:人工智能学术前沿 目录 1.Pytho ...

  7. python列表嵌套字典取值_Python基础语法:你不得不知的几种变量类型

    (点击上方快速关注并设置为星标,一起学Python) 作者:kina_chen來源:简书 01. Python编码Python中默认的编码格式是 ASCII 格式,在没修改编码格式时无法正确打印汉字, ...

  8. Python 列表、字典、元组的一些小技巧

    1. 字典排序 我们知道 Python 的内置 dictionary 数据类型是无序的,通过 key 来获取对应的 value.可是有时我们需要对 dictionary 中的 item 进行排序输出, ...

  9. python 列表嵌套字典 添加修改删除_【Python】列表嵌套字典修改字典里面的一个值却把全部的值都修改了。...

    具体问题就是:当我往空列表里面添加字典,需要修改其中的一个键的值的时候,出现把其他同类的值也修改了. 下面就是出现问题的代码: aliens = [] new_alien = {"color ...

  10. python列表嵌套字典取值_我的 python 学习历程-Day05 字典/字典的嵌套

    一.字典的初识 为什么要有字典 字典与列表同属容器型数据类型,同样可以存储大量的数据,但是,列表的数据关联性不强,并且查询速度比较慢,只能按照顺序存储. 什么是字典 先说一下什么叫可变与不可变的数据类 ...

最新文章

  1. 【写方案攻略】一些实用性方案思维拓展结构图
  2. 怎么扫描_打印机上扫描仪怎么用 打印机上扫描仪使用及添加方法
  3. 5道面试题,拿捏String底层原理
  4. jQuery遮罩层(转)
  5. MapReduce算法–顺序反转
  6. 为什么都建议学java而不是python-都已经掌握了Java,为什么我们还要学Python?
  7. springboot项目自定义注解实现的多数据源切换--亲测有效
  8. 《机器人学导论》克雷格 第3章
  9. 计算机组成原理面试常见问题
  10. Canny边缘检测非极大值抑制法在双立方插值(Bicubic)图像边缘优化
  11. contest1 CF1084 div2 oooxx oooxo ooooo
  12. 搭建个人博客【搭建Hexo+Fluid博客并部署到GitHub/云服务器(阿里云/腾讯云)】
  13. 智能家居系统解决方案
  14. 汇编语言、寄存器分类及程序计数器
  15. 给予Java初学者的学习路线建议
  16. MySql简单入门_第四篇 高级使用(4)_触发器
  17. JavaSE - 14 枚举 + 注解
  18. not exists 中from 后面不同写法带来的效率区别
  19. “面子”真的那么重要吗?——2017过年返乡见闻与思考
  20. react-diagram 序列化Json解读

热门文章

  1. 中国FW贝尔探头市场现状研究分析与发展前景预测报告(2022)
  2. EV全球充电协议测试方案
  3. JavaScript-Pink
  4. L1-057 PTA使我精神焕发 - java
  5. 用c 语言实现数组的并集,C++实现两个数组的并集,交集
  6. 探索SwipeRefreshLayout配合自定义ListView完成下拉刷新、滑到底部自动加载更多
  7. 【JavaScript 教程系列第 10 篇】判断一个数是整数还是小数
  8. MATLAB单点定位程序设计思路
  9. Windows程序设计 读书笔记(3)
  10. P1071,OpenJudge1.7-11潜伏者详解