python: 字典、列表、表格相互转换

导读

字典、列表、表格相互转换解决很多格式问题。

字典<=>列表:
list(Dict); list(Dict.values())
dict(zip(list1, list2))
列表<=>表格:
pd.DataFrame(list)
pd[col_name].tolist(); pd.loc[row_name].tolist()
字典<=>表格:
pd.DataFrame(Dict)
table.to_dict()

一、字典 <=> 列表

  • 字典 > 列表
# 构造字典
Dict = {'a' : 'value_a', 'b' : 'value_b', 'c' : 'value_c'}

# 字典 => 列表
list(Dict)
> ['a', 'c', 'b']
list(Dict.values())
> ['value_a', 'value_c', 'value_b']
  • 字典 < 列表
dict(zip(list(Dict), list(Dict.values())))
{'a': 'value_a', 'c': 'value_c', 'b': 'value_b'}
# 也能看出字典是无序的

二、列表 <=> 表格

  • 列表 > 表格
import pandas as pd
x = ['a', 'c', 'b']
y = ['value_a', 'value_c', 'value_b']
pd.DataFrame(y, x)
>         0
>a  value_a
>c  value_c
>b  value_b

# 或者
z = []
z.append(x)
z.append(y)
pd.DataFrame(z)
>         0        1        2
>0        a        c        b
>1  value_a  value_c  value_b
pd.DataFrame(z).T
>   0        1
>0  a  value_a
>1  c  value_c
>2  b  value_b
  • 列表 < 表格
table = pd.DataFrame(z).T
# 一列 > list
table[0].tolist()
> ['a', 'c', 'b']
# 一行 > list
table.loc[0].tolist()
['a', 'value_a']

三、字典 <=> 表格

  • 字典 > 表格
# 构造字典
Dict = {'a' : [1,2,3,4], 'b' : [5,6,7,8], 'c' : [9,10,11,12]}
# 字典 > 表格
pd.DataFrame(Dict)
>   a  b   c
>0  1  5   9
>1  2  6  10
>2  3  7  11
>3  4  8  12
  • 字典 < 表格
table = pd.DataFrame(Dict)
table.to_dict()
{'c': {0: 9, 1: 10, 2: 11, 3: 12}, 'b': {0: 5, 1: 6, 2: 7, 3: 8}, 'a': {0: 1, 1: 2, 2: 3, 3: 4}}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。