我认为这应该是一项我似乎无法解决的非常简单的任务.
如何将Python字典写入csv文件?我想要的只是将字典键写入文件的顶行,将键值写入第二行.
我最接近的是以下(我从其他人的帖子中得到):
f = open('mycsvfile.csv','wb')
w = csv.DictWriter(f,my_dict.keys())
w.writerows(my_dict)
f.close()
Run Code Online (Sandbox Code Playgroud)
问题是,上面的代码似乎只是将键写入第一行,就是这样.我没有把值写到第二行.
有任何想法吗?
我有一本字典:
d = {1: ["Spices", math.floor(random.gauss(40, 5))],
2: ["Other stuff", math.floor(random.gauss(20, 5))],
3: ["Tea", math.floor(random.gauss(50, 5))],
10: ["Contraband", math.floor(random.gauss(1000, 5))],
5: ["Fruit", math.floor(random.gauss(10, 5))],
6: ["Textiles", math.floor(random.gauss(40, 5))]
}
Run Code Online (Sandbox Code Playgroud)
我想将它打印出来,以便与标题很好地对齐.我可以将标题添加到字典中并始终确保它们排在最前面吗?我已经看到了几种垂直方式,但是我希望它的最大列宽接近max str()或int().
例:
Key_ _ __ _ __ _ Label _ __ _ __ _ ___ Number
1 _ __ _ __ _ ___ 香料_ __ _ _ _ _ _ _ 42
2 _ _ _ _ _ _ _ ___ 其他东西_ ____ _16
等
显然我甚至不能手动在这个编辑器里面做这个,但我希望这个想法能够实现.我也不是真的想要__.只是一个占位符.
谢谢大家.
好吧,我之前阅读了所有这些,我认为大熊猫可能是一个解决方案,但我的问题略有不同:
垂直
打印列表列表打印列表作为表格数据
打印字典值在python列表中
打印到字典表
我有一份清单:
dict={"A":[i1, i2,i3], "B":[i1, i4,i5], "C":[i1, i2,i5]}
Run Code Online (Sandbox Code Playgroud)
我想要的输出是:
i1 i2 i3 i4 i5
A x x x - -
B x - - x x
C x x - - x
Run Code Online (Sandbox Code Playgroud)
(甚至更好,
i1 i2 i3 i4 i5
A A A A - -
B B - - B B
C C C - - C
Run Code Online (Sandbox Code Playgroud)
或者在另一个字典中匹配A,B,C或(A,in)的值,但如果我只能拥有第一个表,我会非常高兴)
没有列表包含重复,但这些列表中的每个元素都是从同一个列表中提取的(实际上我的问题是使用相应的蛋白质制作带注释的术语网格,键是带注释的术语,在我的上下文中是与这些蛋白质相关的函数研究).
我确实可以想到一种复杂的方法(构建0和1的向量,用于将每个列表与一般列表进行比较,将这些向量与键相关联,将其放入一个pandas DataFrame中,该格式将由我重新建立每个列表中的大量实体,然后打印出来),但这看起来很乏味/单调.
我认为必须有一个已知的方法来做一些模块(熊猫,漂亮,其他?); 我只是不知道.所以我很高兴有任何见解.谢谢
我们如何将带有元组(键,值)的dict转换为一个dicts列表,每个dict都带有键"key"和"value"?
例如:
dic={'Tim':3, 'Kate':2}
Run Code Online (Sandbox Code Playgroud)
变
lst = [{'Name':'Tim', 'Age':3}, {'Name':'Kate', 'Age':2}]
Run Code Online (Sandbox Code Playgroud)