【问题标题】:How to write to a csv file even when something is already in it?即使已经存在某些内容,如何写入 csv 文件?
【发布时间】:2020-12-30 13:05:39
【问题描述】:
name = "name"
email = "email"
naslov = "RONKOVA ULICA"
telefonska = "02 832 07 60"
ulica ,postna = naslov.split(",")
naslov.strip()
rows = [[name, email, ulica, naslov, telefonska]]
# Write to csv file 
fields = ["Ime", "Mail", "Ulica", "Poštna Številka", "Telefonska"]
np.savetxt("output.csv",  
       rows, 
       delimiter =", ",  
       fmt ='% s') `name = "name"

这是写入 CSV 文件的代码,但我有一个问题,每次我写入文件时,它都会删除之前在其中的所有内容。有没有办法写入 CSV 文件,即使里面有东西,但要换行?所以输出类似于 名称,邮件,ulica,postna,telefonska, 某事,某事,Ronkova,其他,

如果你想知道像 ulica 这样的词是什么意思。在我的语言中(斯洛文尼亚),ulica 表示街道,poštna številka 表示邮政号码,telefonska 表示电话号码。

【问题讨论】:

    标签: python numpy csv


    【解决方案1】:

    我建议您直接写入文件而不是使用 numpy api,因为 savetxt(与其他 np.save... 方法一样)应该每次都生成一个新文件。您可以通过以下方式实现您想要的:

    name = "name"
    email = "email"
    naslov = "RONKOVA ULICA"
    telefonska = "02 832 07 60"
    ulica ,postna = naslov.split()
    naslov.strip()
    rows = [[name, email, ulica, naslov, telefonska]]
    
    with open("output.csv", "a") as outfile:
      for row in rows:
        print(", ".join(map(str, row)), file=outfile)
    

    open 方法中的"a" 标志表示您正在追加到输出文件。

    执行上述代码两次后,我的output.csv 文件包含以下内容:

    name, email, RONKOVA, RONKOVA ULICA, 02 832 07 60
    name, email, RONKOVA, RONKOVA ULICA, 02 832 07 60
    

    【讨论】:

      猜你喜欢
      • 2021-10-08
      • 2011-07-15
      • 2014-10-22
      • 2011-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-12
      相关资源
      最近更新 更多