用计数器迭代文件名

时间:2012-07-25 13:54:29

标签: python counter

我正在根据字符串拆分文件,并希望对输出文件名进行编号。

这是我到目前为止所做的:

outputfile = open("output.seq")   
outputfileContent = outputfile.read()
outputfileList = outputfileContent.split(">")
for count, line in enumerate(f):
    for items in outputfileList:
        seqInfoFile = open('%f.dat', 'w')
    seqInfoFile.write(str(items))

我不知道在哪里定义f。

感谢您的帮助!

3 个答案:

答案 0 :(得分:2)

假设我没有误解你,你拥有它。

outputfile = open("output.seq")   
outputfileContent = outputfile.read()
outputfileList = outputfileContent.split(">")

for count, content in enumerate(outputfileList, 1):
    with open("output_%s.dat" % count, "w") as output:
        output.write(content)

答案 1 :(得分:0)

如果您想将输出文件列表中的每个项目与标题为其索引的文件相关联,您应该执行以下操作:

for i in range(len(outputfileList)):
    seqInfoFile = open(str(i) + '.dat', 'w')
    seqInfoFile.write(str(outputfileList[i]))

它不像迭代器那么优雅,但另一种选择是通过每次调用outputfileList.index(items)来确定数字。

答案 2 :(得分:0)

打开output.seq,将第一行(在>分割)写入文件1.dat,将第二行写入2.dat,依此类推:

with open("output.seq") as fi:
    for count, line in enumerate(fi, 1):
        with open('{0}.dat'.format(count), 'w') as fo:
            fo.writelines(line.split('>'))