Python 写入文本文件的特定行
我写这段代码:Python 写入文本文件的特定行,python,Python,我写这段代码: f = open('example.txt','r') lines = f.readlines() for i, line in enumerate(f): if i < 3: lines = ['LC '+line for line in lines] with open('./example.txt', 'w') as f: f.writelines(lines) f.close() elif i < 5: lines
f = open('example.txt','r')
lines = f.readlines()
for i, line in enumerate(f):
if i < 3:
lines = ['LC '+line for line in lines]
with open('./example.txt', 'w') as f:
f.writelines(lines)
f.close()
elif i < 5:
lines = ['LB '+line for line in lines]
with open('./example.txt', 'w') as f:
f.writelines(lines)
f.close()
elif i > 6:
break
f.close()
我有一个11行的文件。我想从每一行开始写点东西。第一行的3个单词不同,其他2个单词不同。你能告诉我我做错了什么吗?对于行=['LC'+行对行输入行]
您将LC写入每一行,而不仅仅是前3行
lines=['LB'+line for lines in lines]这里也一样
首先,您可以在行中添加适当的前缀,然后您可以实际编写行。
比如:
for i, line in enumerate(lines):
if i < 3:
# add prefix to line
if 3 < i < 5:
# add correct prefix
现在您的行有了正确的前缀,您可以将它们全部写入一个文件for line=['LC'+line for line in line]
lines = [("LC" if i < 3 else "LB")+line for i,line in enumerate(lines)]
您将LC写入每一行,而不仅仅是前3行
lines=['LB'+line for lines in lines]这里也一样
首先,您可以在行中添加适当的前缀,然后您可以实际编写行。
比如:
for i, line in enumerate(lines):
if i < 3:
# add prefix to line
if 3 < i < 5:
# add correct prefix
现在,您的行具有正确的前缀,您可以将所有行写入一个文件
lines = [("LC" if i < 3 else "LB")+line for i,line in enumerate(lines)]
可能会成功
可能会成功看起来你的第二个条件有点混乱。如果你在前三行写东西,然后在第四行和第五行写东西,那么你的条件需要改变 尝试将第二个elif更改为:
elif i <= 5 and i >=3:
这将打开文件,为您提供一个句柄,并允许您对其进行读写 您的第二个条件似乎有点混乱。如果你在前三行写东西,然后在第四行和第五行写东西,那么你的条件需要改变 尝试将第二个elif更改为:
elif i <= 5 and i >=3:
这将打开文件,为您提供一个句柄,并允许您对其进行读写 我想从每一行开始写点东西。我觉得这个规格太模糊了。你能更准确地说出你想做什么和你现在得到了什么吗?@dmckee在前三行是LC,在另一行是LB。如果<3@user1617766for循环的主体需要缩进。我想从每一行开始写一些东西。我觉得这个规格太模糊了。你能更准确地说出你想做什么和你现在得到了什么吗?@dmckee在前三行是LC,在另一行是LB。如果<3@user1617766for循环的主体需要缩进[LC%d%i+行对i,行对枚举行][LC%d%i+行对i,行对枚举行]