Python 3.7-在文件夹中所有.txt文件的每行开头插入文件名

Python 3.7-在文件夹中所有.txt文件的每行开头插入文件名,python,Python,Python 3.7-在文件夹中所有.txt文件的每行开头插入文件名 我在一个文件夹中有几个不同名称的.txt文件。我想在每个.txt文件的每一行的开头插入文件名 到目前为止,我所能做的就是插入我在另一篇文章中找到的数字。下面的代码对此很有效,但我无法找到插入打开文件名的方法: import os def add_numbers(filename): with open(filename, 'r') as readfile: data = readfile.readli

Python 3.7-在文件夹中所有.txt文件的每行开头插入文件名

我在一个文件夹中有几个不同名称的.txt文件。我想在每个.txt文件的每一行的开头插入文件名

到目前为止,我所能做的就是插入我在另一篇文章中找到的数字。下面的代码对此很有效,但我无法找到插入打开文件名的方法:

import os

def add_numbers(filename):
    with open(filename, 'r') as readfile:
        data = readfile.readlines()
    with open(filename, 'w') as writefile:
        for i, line in enumerate(data):
            writefile.write('%d. %s' % (i + 1, line))

for path, _, filenames in os.walk('.'):
    for filename in filenames:
        add_numbers(os.path.join(path, filename))

到目前为止你做了什么?你被困在哪里了?我已经用我到目前为止尝试过的方法更新了帖子@anerisgreat将%d替换为%s,并将I+1替换为文件名。如果需要,请更新works@anerisgreat-谢谢,writefile有效。write(“%s.%s%”(文件名,行))很高兴能提供帮助。然后将问题标记为已结束
import os

def add_numbers(filename):
    with open(filename, 'r') as readfile:
        data = readfile.readlines()
    with open(filename, 'w') as writefile:
        for i, line in enumerate(data):
            writefile.write('%s. %s' % (filename, line))

for path, _, filenames in os.walk('.'):
    for filename in filenames:
        add_numbers(os.path.join(path, filename))