如何将列表中的字符串添加到字典中?

时间:2021-07-07 01:19:49

标签: python list dataframe dictionary

所以我目前有一个字符串列表:

name_row = ['Bob', 'Jerry', 'Will']
rating_row = ['4.0', '2.5', '3.7']
title_row = ['Geat', 'Okay', 'Nice']

我想要的结果是这样的:

<头>
名字 评分 标题
鲍勃 4.0 很棒
杰瑞 2.5 好的
3.7 不错

到目前为止我所拥有的是

rows = []
row = {}

name_row = ['Bob', 'Jerry', 'Will']
rating_row = ['4.0', '2.5', '3.7']
title_row = ['Geat', 'Okay', 'Nice']
        
for name in name_row:
    row['Name'] = row.get(name)

rows.append(row)

df = (pd.DataFrame(rows))

但是当我调用 df 时我得到 {'Name':none} 并且我不知道如何将这些字符串从列表中添加到字典中?

2 个答案:

答案 0 :(得分:2)

试试:

df = pd.DataFrame({'Names': name_row, 'Rating': rating_row, 'Title': title_row})
print(df)
#    Names Rating Title
# 0    Bob    4.0  Geat
# 1  Jerry    2.5  Okay
# 2   Will    3.7  Nice

此构造在 doc 中有解释。特别是,请阅读其中的第一个示例:

d = {'col1': [1, 2], 'col2': [3, 4]}
df = pd.DataFrame(data=d)
# df
#    col1  col2
# 0     1     3
# 1     2     4

答案 1 :(得分:2)

所以,你的第一个问题是行中没有任何东西,所以当你打电话时

row.get(name)

没有什么可以得到的。因此 {'Name':none} 输出。

如果您已经有了 3 行,那么获得所需结果的最简单方法是:

df = pd.DataFrame({'Names': name_row, 'Rating': rating_row, 'Title': title_row})

使用带有这些参数的 DataFrame() 方法将列名称设置为“名称”、“评级”和“标题”。每个列名成为字典中的键,其中每个键的值成为您现有的字符串列表。现在,您的数据框是 [String: List of String]

的字典
相关问题