猿问

如何使用Python搜索和替换文件中的文本?

如何使用Python搜索和替换文件中的文本?

如何使用Python 3搜索和替换文件中的文本?

这是我的代码:

import osimport sysimport fileinputprint ("Text to search for:")textToSearch = input( "> " ) print ("Text to replace it with:")
textToReplace = input( "> " )print ("File to perform Search-Replace on:")fileToSearch  = input( "> " )
#fileToSearch = 'D:\dummy1.txt'tempFile = open( fileToSearch, 'r+' )for line in fileinput.input( fileToSearch ):
    if textToSearch in line :
        print('Match Found')
    else:
        print('Match Not Found!!')
    tempFile.write( line.replace( textToSearch, textToReplace ) )tempFile.close()input( '\n\n Press Enter to exit...' )

输入文件:

嗨我是ABCD嗨我是ABCD

这是虚拟文本文件。

这就是搜索和替换Works abcd的方法。

当我在上面的输入文件中搜索并将“ram”替换为“abcd”时,它就像一种魅力。但是当我这样做的时候-反之亦然-用‘ram’代替‘abcd’,在结尾留下一些垃圾字符。

将“ABCD”替换为“ram”

嗨,这是拉姆,你好,我是拉姆

这是虚拟文本文件。

以下是搜索和替换Works的方法


蝴蝶刀刀
浏览 1515回答 3
3回答

慕森卡

fileinput已经支持内部编辑。它重定向stdout到本例中的文件:#!/usr/bin/env python3import fileinputwith fileinput.FileInput(filename, inplace=True, backup='.bak') as file:     for line in file:         print(line.replace(text_to_search, replacement_text), end='')
随时随地看视频慕课网APP

相关分类

Python
我要回答