【问题标题】:Python CSV Write columnPython CSV 写入列
【发布时间】:2011-11-30 17:45:08
【问题描述】:

我得到了这个示例代码:

import csv
w = csv.writer(file(r'test.csv','wb'), dialect='excel')
some_values=[(1,2,3)]
w.writerows(some_values)

当我在 excel 中打开 CSV 时,我得到了相同 column(A) 中的所有值。我想在A1B1C1 中输入值。我该怎么做?

MS Office Excel 2007 SP2

谢谢。

解决方案:

w = csv.writer(file(r'test.csv','wb'), delimiter=';')

【问题讨论】:

  • 一秒:您可能使用的是非美国版本的 Excel?因为例如德语 Excel 使用 ; 作为分隔符,Python 的 excel 方言提供逗号。
  • 你是对的!我添加了这个标志,分隔符=';'。谢谢。
  • @user1073911 - 我不确定您是否已经被允许回答自己的问题,但您应该尽快将您的解决方案写成答案并将其选为已接受,所以其他的参观者一眼就知道这个问题得到了解决。你甚至应该为此获得一个青铜徽章,我相信......
  • 信誉低于 100 的用户需要在提问后等待 8 小时。

标签: python csv file-io


【解决方案1】:

我以前从未使用过 CSV 模块,但您将 some_values 设置为元组列表。

所以列表的第一个元素是一个元组 (1,2,3)。

您应该只使用列表 [1,2,3] 还是元组 (1,2,3)?

【讨论】:

  • 一开始我也是这么想的,但由于他使用的是 writerows,我想它期待一个可迭代的迭代。
【解决方案2】:

w = csv.writer(file(r'test.csv','wb'), delimiter=';')

【讨论】:

    【解决方案3】:

    每个值都需要是列表的成员,而不是元组:
    例如w.writerows([1, 2, 3])
    在本例中,1 - 3 被写入单独的列。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-11-09
      • 1970-01-01
      • 1970-01-01
      • 2014-09-21
      • 2016-06-30
      • 1970-01-01
      • 2013-07-16
      相关资源
      最近更新 更多