我有一个简单的python字典,格式如下:
{"key1":1,"key2":42,"key3":"foo"}
并希望存储在一个csv文件中,其中键是头,值是第二行的单元格值:
| "key1" | "Key2" | "key3" | | 1 | 42 | "foo" |
csv文件将只有2行。
我认为使用csv和python是可能的,但找不到正确的方法(应该很容易)。总是交换我的行/列。
你也可以试试这个
d = {"key1":1,"key2":42,"key3":"foo"} df = pd.DataFrame.from_dict(d, orient='index').T print(df) key1 key2 key3 0 1 42 foo
显而易见的答案已经公布。给麻木打一针。此外,它不考虑订购。
import numpy as np d={"key1":1,"key2":42,"key3":"foo"} a=np.array([d.keys()]) b=np.array([d.values()]) x=np.concatenate([a,b],0) np.savetxt('x.csv',x,delimiter=',',fmt='%s')
有一种方法:
df = pd.DataFrame([d]) df.to_csv('out.csv', index=False) print(df) key1 key2 key3 0 1 42 foo
注意 pd.DataFrame 构造函数接受 list 字典。这里的列表恰好只有一个字典,但这已经足够了。
pd.DataFrame
list
假设你 dict 名称为 d
dict
d
pd.Series(d).to_frame().T Out[55]: key1 key2 key3 0 1 42 foo #pd.Series(d).to_frame().T.to_csv()