如何删除打印的文件行



我的程序从data.txt文件中读取并将其打印在discord上作为命令的重播,我想从data.txt中删除打印的代码。如何做到这一点?有什么想法吗?Atm代码不起作用,因为read_coupon((返回空值(清除所有txt文件(


@client.command()
async def read_data(ctx, amount):
await ctx.send(read_coupon(int(amount)))
def read_coupon(amount):
result = ''
with open("data.txt","r") as f:
for line in f:
result += line
amount -= 1
if line == result:
line.replace(result," ")   
if amount == 0: break            

return result
data.txt:
uno
dos
tres
cuatro
cinco
seis
siete
ocho
nueve
diez

首先读取文件,然后将x行添加到结果中,并将其他行写回文件中。

def read_coupon(amount):
result = ''
with open("kody.txt","r") as f:
lines = f.readlines()
with open("kody.txt","w") as f:
for line in lines:
if amount!=0:
result+=line
amount-=1
else:
f.write(line)

return result

最新更新