python里dict(字典)怎么变成list(列表)?
说明:列表不可以转换为字典
1、转换后的列表为无序列表
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
a = { 'a' : 1 , 'b' : 2 , 'c' : 3 }
#字典中的key转换为列表
key_value = list (a.keys())
print ( '字典中的key转换为列表:' , key_value)
#字典中的value转换为列表
value_list = list (a.values())
print ( '字典中的value转换为列表:' , value_list)
|
运行结果:
1
2
3
|
字典中的key转换为列表:[ 'a' , 'b' , 'c' ]
字典中的value转换为列表:[ 1 , 2 , 3 ]
|
2、转换后的列表为有序列表
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
import collections
z = collections.OrderedDict()
z[ 'b' ] = 2
z[ 'a' ] = 1
z[ 'c' ] = 3
z[ 'r' ] = 5
z[ 'j' ] = 4
#字典中的key转换为列表
key_value = list (z.keys())
print ( '字典中的key转换为列表:' , key_value)
#字典中的value转换为列表
value_list = list (z.values())
print ( '字典中的value转换为列表:' , value_list)
|
运行结果:
1
2
3
|
字典中的key转换为列表:[ 'b' , 'a' , 'c' , 'p' , 'j' ]
字典中的value转换为列表:[ 2 , 1 , 3 , 5 , 4 ]
|
注:此处使用的Python版本为3.x。
Python dict 和 list 转换
这里有个dict
1
2
3
4
5
6
|
d1 = {
'en' : '英语' ,
'cn' : '中文' ,
'fr' : '法语' ,
'jp' : '日语'
}
|
使用d1.keys()或 d1.values() 可以提取出values 和keys 。也可以生成keys,和values 通过以下代码:
1
2
|
list_values = [i for i in d1.values()]
list_keys = [ i for i in d1.keys()]
|
这样,list_keys就是:['en', 'cn', 'fr', 'jp'] list_values 就是:['英语', '中文', '法语', '日语']
要把这两个list合成一个dict,可以结合zip()函数。
1
2
|
d2 = dict ( zip (list_keys,list_values))
print ( 'd2' ,d2)
|
结果就是:
1
|
d2 { 'en' : '英语' , 'cn' : '中文' , 'fr' : '法语' , 'jp' : '日语' }
|
以上就是关于python里dict怎么变成list的全部知识点内容,如果大家想更深入学习关于python相关知识点,可以参阅Python栏目,感谢大家对服务器之家的支持。