【问题标题】:create a new csv file using python使用python创建一个新的csv文件
【发布时间】:2015-06-22 08:34:41
【问题描述】:

我正在尝试将我的字典写入一个 sf 文件,这是我的做法:

with open(path3 + 'extend.csv', 'w') as fw:
    for key1, value in d.items():
        fw.write(value +',')
    fw.write('\n')
fw.close()

问题是我在每行的末尾多了一个逗号。我怎样才能首先防止这种形式发生?

【问题讨论】:

  • 附带说明,dict 项目订单不被维护。如果您不关心将这些值放入 csv 文件的顺序,这种方法很好,但我认为对于大多数人来说,他们确实关心。遍历特定的 dict 键或切换到 d 的列表(保持顺序)。

标签: python python-2.7 csv file-io


【解决方案1】:

使用csv 模块:https://docs.python.org/2/library/csv.html

import csv
with open(path3 + 'extend.csv', 'w') as fw:
    writer = csv.writer(fw, delimiter=',')
    writer.writerow(d.values())

【讨论】:

【解决方案2】:

您可以使用",".join 来执行此操作。此外,您可以使用d.values() 直接访问这些值,因此您实际上不需要遍历字典然后提取值。

所以本质上,您的代码可以简化为:

with open(path3 + 'extend.csv', 'w') as fw:
    fw.write(",".join(d.values()))
    fw.write('\n')
fw.close()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-18
    • 2011-01-06
    • 1970-01-01
    • 1970-01-01
    • 2018-04-27
    相关资源
    最近更新 更多