2

ここで私がやろうとしていることは次のとおりです。1。テキストファイルから行を読み取ります。2.特定の文字列を含む行を検索します。3.その行を削除し、結果を新しいテキストファイルに書き込みます。

たとえば、次のようなテキストがある場合:

Starting text
How are you?
Nice to meet you
That meat is rare
Shake your body

そして、私の特定の文字列が'are'の場合、次のように出力する必要があります。

Starting text
Nice to meet you
Shake your body

私は次のようなものは必要ありません:

Starting text

Nice to meet you

Shake your body

私はこのようなことを試みていました:

opentxt = open.('original.txt','w')
readtxt = opentxt.read()

result = readtxt.line.replace('are', '')

newtxt = open.('revised.txt','w')
newtxt.write(result)
newtxt.close()

しかし、それはうまくいかないようです...

助言がありますか?どんな助けでも素晴らしいでしょう!

前もって感謝します。

4

2 に答える 2

3

いつもと同じ。ソースファイルを開き、宛先ファイルを開き、必要な行のみをソースファイルから宛先ファイルにコピーし、両方のファイルを閉じ、宛先ファイルの名前をソースファイルに変更します。

于 2012-08-15T03:26:22.373 に答える
2
with open('data.txt') as f,open('out.txt') as f2:
    for x in f:
        if 'are' not in x:
            f2.write(x.strip()+'\n')  #strip the line first and then add a '\n', 
                                      #so now you'll not get a empty line between two lines   
于 2012-08-15T03:27:35.607 に答える