刪除檔案中的數字
re
。下面是一個簡單的示例,演示瞭如何從檔案中刪除數字:
1、問題背景
car1 auto1 automobile1 machine4 motorcar1
bridge1 span5
road1 route2
你想把它變成這樣:
car auto automobile machine motorcar
bridge span
road route
2、解決方案
有幾種方法可以從檔案中刪除數字。下面介紹其中四種方法:
方法1:使用正規表示式
你可以使用正規表示式來匹配和刪除檔案中的數字。例如,你可以使用下面的程式碼:
import re
import fileinput
for line in fileinput. input( "your_file.txt", inplace = True):
print re. sub( "\d+", "", line),
上面的程式碼使用 regular expressions (正規表示式) 模組來匹配和刪除檔案中的數字。
re.sub("\d+", "", line)
這行程式碼使用
re.sub
函式來匹配和替換檔案中的數字。
"\d+"
這個正規表示式匹配一個或多個數字。
""
表示用一個空字串來替換匹配的數字。
fileinput
模組允許你逐行讀取檔案,並對每行進行操作。
inplace=True
引數告訴
fileinput
模組對原始檔案進行修改,而不是建立一個新的檔案。
方法2:使用
str.translate
函式
str.translate
函式可以用來刪除檔案中的數字。例如,你可以使用下面的程式碼:
import fileinput
import string
for line in fileinput. input( "your_file.txt", inplace = True):
print line. translate( None, string. digits),
上面的程式碼使用
str.translate
函式來刪除檔案中的數字。
line.translate(None, string.digits)
這行程式碼使用
str.translate
函式來刪除字串中的數字。
None
引數告訴
str.translate
函式不使用翻譯表。
string.digits
是一個包含所有數字字元的字串。
方法3:使用 with 語句
你也可以使用 with 語句來刪除檔案中的數字。例如,你可以使用下面的程式碼:
with open( 'input.txt', 'r') as f1, open( 'output.txt', 'w') as f2:
f2. write( "". join([ c for c in f1. read() if not c. isdigit()]))
上面的程式碼使用
with
語句來開啟兩個檔案。
input.txt
檔案以只讀模式開啟。
output.txt
檔案以寫入模式開啟。
"".join([c for c in f1.read() if not c.isdigit()])
這行程式碼使用列表解析來從
input.txt
檔案中讀取字元,並過濾掉數字字元。然後,它把剩下的字元連線成一個字串,並寫入
output.txt
檔案中。
方法4:使用
os.replace
函式
你也可以使用
os.replace
函式來刪除檔案中的數字。例如,你可以使用下面的程式碼:
import os
with open( 'file', 'r') as f:
data = f. read()
data = data. translate( None, '0123456789')
with open( 'file', 'w') as f:
f. write( data)
上面的程式碼使用
os.replace
函式來刪除檔案中的數字。
with open('file', 'r') as f:
這行程式碼使用
with
語句來開啟檔案。
data = f.read()
這行程式碼使用
read
方法來讀取檔案中的內容。
data = data.translate(None, '0123456789')
這行程式碼使用
str.translate
函式來刪除字串中的數字。
with open('file', 'w') as f:
這行程式碼使用
with
語句來開啟檔案。
f.write(data)
這行程式碼使用
write
方法來把字串寫入檔案中。
在這個例子中,
remove_numbers_from_file
函式接受輸入檔名和輸出檔名作為引數。它首先讀取輸入檔案的內容,然後使用正規表示式
r'\d+'
來匹配數字,並使用
re.sub
函式將其替換為空字串,從而刪除數字。最後,它將結果寫入輸出檔案。
這樣我們可以將
'input.txt'
和
'output.txt'
來自 “ ITPUB部落格 ” ,連結:https://blog.itpub.net/70034537/viewspace-3012291/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- liunx批量刪除指定字尾的檔案
- Linux刪除指定字尾名檔案的命令Linux
- 如何永久刪除Mac中的檔案?Mac
- 在 Linux 中如何刪除檔案中的空行Linux
- 刪除指定目錄下指定字尾的檔案
- Git——刪除檔案Git
- SVN !檔案刪除
- rm 刪除檔案
- u盤裡的檔案無法刪除 如何刪除u盤裡刪不掉的檔案
- 刪除vmvare的大檔案
- 在Linux中,有一個檔案,如何刪除包含“www“字樣的字元?Linux字元
- 得到txt空白行的行數、將txt檔案的空行刪除和刪除csv檔案中指定的行
- win10休眠檔案有必要刪除嗎 刪除休眠檔案的方法Win10
- Linux迴圈遍歷所有檔案,刪除指定字尾名檔案Linux
- linux的刪除檔案命令和強制刪除命令Linux
- 怎麼刪除電腦中開啟的檔案記錄?刪除電腦中開啟的檔案記錄方法教程
- 如何刪除win10更新檔案_win10刪除更新檔案的方法Win10
- dll檔案刪除不了
- Linux刪除檔案命令Linux
- Git刪除指定檔案Git
- Linux批量刪除檔案Linux
- RocketMQ -- 過期檔案的刪除MQ
- Git恢復刪除的檔案Git
- git刪除歷史中的某個大檔案Git
- 如何優雅地刪除 Linux 中的垃圾檔案Linux
- shell指令碼之刪除固定天數之前的檔案指令碼
- win10怎麼刪除更新檔案 win10刪除更新檔案的方法Win10
- win10怎麼刪除dll檔案_win10dll檔案刪除的方法Win10
- win10休眠檔案如何刪除 win10刪除休眠檔案的步驟Win10
- 行動硬碟刪除的檔案能恢復嗎,怎麼恢復硬碟刪除的檔案硬碟
- 在Linux中,如何建立、刪除和修改檔案?Linux
- 批量刪除大量小檔案
- [20201112]tmpwatch 刪除檔案.txt
- linux 模糊批量刪除檔案Linux
- MySQL socket檔案被刪除MySql
- kafka-- 過期檔案的刪除Kafka
- Xcode 刪除沒用的描述檔案XCode
- 如何刪除win10睡眠檔案_win10怎麼刪除睡眠檔案Win10