首页 > 解决方案 > Python 函数,它写入输出 txt 文件,其中包含有关原始文本的特定信息

问题描述

所以我正在尝试编写一个函数,它使用文件名作为参数并创建一个新文件 out_file.txt ,其中包含原始文本、行号和直到并包括当前行的单词总数。

所以原始txt文件中的文本是:

你好 你好
sup sup 嘿嘿
再见 再见 再见

out_file.txt 应该是:

你好 你好 1 2
sup sup 嘿嘿 2 6
再见 再见 再见 3 11

其中第一个数字是行号,第二个数字是添加到该点的单词。

我的尝试还没有完成,因为我不确定如何引用 txt 文件中的特定行或如何添加字数。所以这就是我到目前为止所拥有的一切:

    def changefile(filename):
    with open('in_file.txt', 'r') as in_h, open('out_file.txt', 'w') as out_h:
        for lines in in_h

在这里我的头脑有点崩溃,我只是一个初学者。

标签: python

解决方案


您只有代码来读取文件并遍历文件的行。

代码还应包括拆分行以计算一行中的单词数并添加行号,可以这样做:

count = 0
idx = 1
with open('Odata.txt', 'r') as inp, open('out.txt', 'w') as out:
    for line in inp:
        count += len(line.split())
        out.write(f"{line.strip()} {idx} {count}\n")
        idx += 1

推荐阅读