python文本交换_有没有办法用python交换文本文件中的两行文本?

我正在尝试编写一个python脚本,该脚本将获取一个文件(我们将其称为input.txt),并查找以文本“move to first perimeter point”结尾的行,然后它需要将这行替换为它后面的行,并将它后面的行替换为第一行。文件的其余部分必须保持不变。有很多实例需要在文件中发生这种情况。在

我的思维过程是这样的。查找以“移动到第一个周界点”结尾的行。一旦代码找到它,它会将该行保存为变量,然后从文件中删除该行。然后,如果下一行以“restore layer Z”结尾(下一行总是这样),则需要在这行后面添加先前删除的行。在Here is what I am trying to do:打开一个文件('input.txt')。在

连续两行交换,其中,

第一行以:'move to first perimeter point'结尾

第二行以:'restore layer Z'结尾

注意:众所周知,所有此类事件都会成对发生(连续放置第一-第二行)。在

将此更改写入新文件('output.txt')。在

我试过用python把它组合起来。我几年前就玩过python了,还依稀记得怎么用它。它抛出了错误。以下是我在注释部分建议的更正后的代码:(a)str.endwith --> str.endswith,(b)For --> for。任何建议都会很有帮助和感激。在inp = open('input.txt','r')

out = open('output.txt', 'w')

prev = inp.readline()

for line in inp:

if line.endswith('move to first perimeter point')

prev = line

if line.endswith('restore layer Z')

out.write(line)

out.write(prev)

else:

out.write(prev)

prev = line

out.write(prev)

out.close()

inp.close

我希望输入文件保持不变,同时创建一个新的输出文件。相反,什么也没发生。在

提前感谢您的帮助!我对这个很陌生。在

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值