簡體   English   中英

如何使用python刪除文本文件中的行?

[英]How do I delete a line in a text file using python?

我有一個語料庫文本文件,該文件被輸入到一個Twitter應用程序中,該應用程序會定期一次鳴叫一行。 但是,在發布一條推文后,我希望它從文本文件中刪除它。 這是鳴叫各行的當前代碼(我最初並未編寫此代碼,但已對其進行了少許修改):

#!/usr/bin/env python
# -*- coding: utf-8 -*-

# by robincamille - for mechnicalpoe

# Tweets a .txt file line by line, waiting an hour between each tweet.
# Must be running all the time, e.g. on a Raspberry Pi, but would be better
# if rewritten to run as a cron task.

import tweepy, time
import random

filename=open('lines.txt','r')
f=filename.readlines()
filename.close()

#f = random.choice(open('lines.txt').readlines())

for line in f:

     api.update_status(line)
     print line
     time.sleep(160) # Sleep

我如何修改它以使其在發推文后立即刪除每行?

您不會從文件中刪除任何行:)

只需將文件讀入列表並鳴叫(並刪除)列表中的元素即可。

並且:您不必等待“一個小時”(如評論中所述)-160秒!

我可能會先讀取整個文件,然后在Twitter上鳴叫並刪除所需的行,然后再次打印出文件。

檢查您一個小時的睡眠時間。 每小時3600秒。

正如評論所建議的,cron可能更好。 我會編寫一個程序,僅執行一條推文,然后將其放入cron。 這樣,您就不會有纏綿的python進程。

每小時運行一次:0 * * * *(/ path / to / program; python program.py arg)

http://www.thegeekstuff.com/2009/06/15-practical-crontab-examples/ http://www.thesitewizard.com/general/set-cron-job.shtml

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM