【问题标题】:saving arrays in an array to csv file using python使用python将数组中的数组保存到csv文件
【发布时间】:2014-03-20 21:59:51
【问题描述】:

我正在尝试使用 python 将数组保存到 csv 文件中。

我有一个数组数组:

myarr = [[10.3,11.2,10.7],[13.4,12.6,12.7],[12.56,14.21,11.33]]

我想把它保存成一个csv文件,格式如下:

    A      B      C
1  10.3   11.2   10.7
2  13.4   12.6   12.7
3  12.56  12.41  11.33

我需要它保存而不删除以前的行,所以如果我回到同一个文件中尝试保存更多数组,它不应该删除旧行,它应该从下一个可用行开始。

感谢您的帮助。

【问题讨论】:

  • 如果您可以添加一些您尝试过的代码、您获得的一些输出/您遇到的错误、您希望如何命名行和列以及您期望的值类型,这将有所帮助。
  • 另外,csv 是 comma separated values 的缩写。您想要逗号、制表符还是空格作为分隔符?
  • @SteinarLima 逗号。 Algiriyage 提供的代码是完美的,只是它重写而不是在新的空白行处继续。

标签: python arrays csv


【解决方案1】:

我不知道这些列标题是什么。请进一步解释。您可以使用以下代码将数组逐行写入 csv 文件。

import csv
myarr = [[10.3,11.2,10.7],[13.4,12.6,12.7],[12.56,14.21,11.33]]
with open("myarray.csv", "wb") as f:
    writer = csv.writer(f)
    writer.writerows(myarr)

【讨论】:

  • 你所拥有的是完美的,但是当我之后尝试编写更多数组时,它会重写。它不会从下一个空白行开始。列标题只是显示我在写入 excel 时要查找的格式
  • 只需将模式标志从'wb'更改为'a'
  • 感谢并在写入时使用 lineterminator = '\n' 这样它就不会跳过行
  • @user1681664 :抱歉,我没有看到您的要求。是的,正如 Steinar 所说,您必须将“wb”更改为“a”。 :)
猜你喜欢
  • 2016-08-25
  • 2017-01-05
  • 1970-01-01
  • 2019-04-15
  • 1970-01-01
  • 1970-01-01
  • 2021-05-08
  • 1970-01-01
  • 2016-02-03
相关资源
最近更新 更多