计算行数并创建新文件

时间:2016-10-13 23:46:48

标签: python

所以基本上我必须调用文本文件,并在添加一些字符串时创建新文件。

例如,如果我的输入文字是:

您好

世界

很高兴见到你

我的输出文字必须是:

1:你好

2:世界

3:很高兴见到你

以下是我一直想弄清楚的代码。当我尝试它时,没有错误,但它也不会创建新文件。

with open('filetext') as f:
    content=f.readlines()   
    for count in f:
        count+=1
        with open('newfiletext', 'a+') as f:     
        f.write(counts)
        f.write(': ')
        f.write(content)
        f.write('\n')

如果能得到帮助,我感激不尽。提前谢谢。

2 个答案:

答案 0 :(得分:1)

文本文件:

Hello
World
Nice to Meet You

代码:

with open('test.txt') as f:
    for i , line in enumerate(f.readlines()):
        print "{0}:{1}".format(i+1,line)

输出:

1:Hello

2:World

3:Nice to Meet You

然后你可以存储在字符串中并写入文件或其他文件

答案 1 :(得分:1)

首先打开文件:

with open('filetext') as f:

然后你把整个事情都读到一个列表中:

content=f.readlines()   

然后您尝试迭代现在空的文件对象:

for count in f:

由于它是空的,因此下一个块中的任何内容都不会执行,甚至一次。确保跟踪变量名称,并为要操作的每个唯一对象使用唯一的变量名称 - 值得注意的是,fcount在不应该被重用时使用:

with open('filetext') as f, open('newfiletext', 'a+') as output:
    count = 0
    for line in f:
        count += 1
        output.write(count)
        output.write(': ')
        output.write(line)