繁体   English   中英

Python-将列表写入几个以list内容命名的文件

[英]Python - Write a list to several files named with contents of list

我有一个代表对象的列表,这些对象又具有值YEAR,NAME,NUMBER。 然后可以遍历该对象列表,获取所有值并将该行写入以该对象的YEAR值命名的文件吗?

inData是对象列表,outPath只是我希望它们进入的文件夹。 当我执行代码时,似乎每年只代表一行。 就像下一个写行覆盖了前一个值一样

代码示例:

def writeFileFromList(inData, outPath) :
    for row in inData:
        outfile = open(str(outPath +"/"+row.getYear(), "w+"))
        outfile.write(str(row) + "\n")
        outfile.close()

我想要的输出文件内容示例:

2002;AAAAAA;1
2002;BBBBBB;2
2002;CCCCCC;3

要将行附加到文件,请使用

open("filename","a")

在这里, a代表追加。

尝试这个

def writeFileFromList(inData, outPath) :
    for row in inData:
        with open(str(outPath +"/"+row.getYear(), "a")) as outfile:
        outfile.write(str(row) + "\n")

打开文件时,您需要指定要使用的模式,有关更多详细信息,请参考以下链接:

https://docs.python.org/2/library/functions.html#open

在您希望将内容追加到年度文件中的情况下,应使用“ a”模式告诉python不会覆盖文件,因此以下是根据示例更正的代码:

def writeFileFromList(inData, outPath) :
    for row in inData:
        outfile = open(str(outPath +"/"+row.getYear(), "a"))
        outfile.write(str(row) + "\n")
        outfile.close()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM