抱歉,如果这个问题是重复的,但我搜索,找不到一个简单的例子。你知道吗
我正在尝试将字典值写入csv文件。下面是python代码:
w = csv.writer(open("../log.csv", "w"))
alphanum = {'A':1, 'B':2, 'C':3, 'D':4, 'ZA':27, 'ZB':28, 'ZC':29, 'ZD':30}
for key, val in sorted (alphanum.items()):
w.writerow([key, val])
以下是csv文件中的输出:
|---------|---------|
| A | 1 |
| B | 2 |
| C | 3 |
| D | 4 |
| ZA | 27 |
| ZB | 28 |
| ZC | 29 |
| ZD | 30 |
|---------|---------|
但我想拆分行并按以下格式写入:
|---------|---------|---------|---------|
| A | 1 | ZA | 27 |
| B | 2 | ZB | 28 |
| C | 3 | ZC | 29 |
| D | 4 | ZD | 30 |
|---------|---------|---------|---------|
编辑
在进一步澄清之后,以下是您正在寻找的解决方案:
如您所见,我们将字典的大小分配给变量
alphanum_size
,以避免在for
循环中过多的len()
函数调用,这会在一定程度上阻碍效率。你知道吗我们还在for循环中使用了ternary operator。相当于:
最简单的方法是更改数据容器,并基本上将其转换为
list
的dict
然后,可以使用
DictWriter
轻松地执行写操作。你知道吗这里可以做的另一个改进是使用上下文管理器而不是常规文件
open()
。你可以阅读这些here。你知道吗相关问题 更多 >
编程相关推荐