我正在尝试在python文件的开头添加一些文本,但是不是将文本附加到文件,而是创建了一个具有相同名称的新文件并写入该文件。
#!/usr/bin/env python3
import os
files = 'f0_ascii'
x = 0
for file in os.listdir(files):
x += 1
with open(file, 'a') as file2:
y = 0
for line in file:
y += 1
file2.seek(0, 0)
string_in_string = "sometext {}".format(y - 10)
file2.write(string_in_string)
file2.close()
if x == 1:
exit()
我希望它在现有文件的开头加上"sometext {}".format(y-10)
答案 0 :(得分:0)
如果指定了文件夹目录,它将起作用:
import os
files = 'my_folder'
def line_prepender(filename, line):
with open(filename, 'r+') as f:
content = f.read()
f.seek(0, 0)
f.write(line.rstrip('\r\n') + '\n' + content)
for file in os.listdir(files):
y = 0
for line in file:
y += 1
line_prepender(r'my_folder\{}'.format(file), "sometext {}".format(y - 10))
如果未指定,open()
只会在当前目录中找不到您的文件,因此它将在该目录中创建并打开它们。
编辑:使用here中的一些代码来使此脚本完全执行您想要的操作。