在 Python 中去除多個字元
-
使用
str.replace()
去除 Python 字串中的多個字元 -
使用
re.sub()
函式去除 Python 字串中的多個字元 -
使用
string.translate()
方法去除 Python 字串中的多個字元
剝離字串物件中的字元是程式設計師必須知道的一項重要任務。剝離意味著你應該能夠從任何位置刪除字元。
在開始剝離之前,你必須記住 Python 字串物件是不可變的。因此,它們不能被修改。因此,我們將在每個示例中將剝離的字串儲存在一個新字串中。
在本教程中,我們將研究從 Python 中的任何位置剝離多個字元的幾種方法和示例。
使用 str.replace()
去除 Python 字串中的多個字元
str.replace()
方法提供了剝離功能。讓我們先看一下程式碼及其輸出:
original_string = "!(Hell0o)"
characters_to_remove = "!()0"
new_string = original_string
for character in characters_to_remove:
new_string = new_string.replace(character, "")
print(new_string)
輸出:
Hello
你將要做的是建立一個要從字串中刪除的字串。
現在,將原始字串分配給新字串以保持原始字串不變。
接下來,你將使用 for
迴圈通過源字串來查詢文獻。在迴圈內部,你將檢查要刪除的字元,並使用 str.replace()
方法將它們替換為不帶空格的字元。然後,你將獲得所需的輸出。
該函式的語法如下。
string.replace(old character, new character, count)
字串是要從中刪除字元的字串。
第一個引數 old character
表示你要替換的字元。
new character
引數是你要替換的字元。
第三個引數 count
是一個可選引數,表示你希望替換的那個字元的出現次數。如果傳遞 2,該函式將替換該字元的兩次出現。
使用 re.sub()
函式去除 Python 字串中的多個字元
這是在 Python 中從字串中去除字元的另一種常用方法。此函式是 re 模組的一部分,它由你可以使用的正規表示式或正規表示式操作組成。
對於這個函式,讓我們考慮一個不同的例子:
import re
original_string = "!(pyth000on)"
characters_to_remove = "!()0"
pattern = "[" + characters_to_remove + "]"
new_string = re.sub(pattern, "", original_string)
print(new_string)
輸出:
python
在這裡,我們定義了一個字串,該字串由我們要從源字串中刪除的字元組成。然後我們使用了 re.sub()
函式,它接受三個引數:正規表示式模式、要替換它的字串和源字串。
從輸出中,我們可以看到它已經刪除了字元。我們也可以嘗試更長的句子。例如。
import re
original_string = "!(pyth000on is mYy pro0gra@mm!ing langu@age3)"
characters_to_remove = "!()0Y@!3"
pattern = "[" + characters_to_remove + "]"
new_string = re.sub(pattern, "", original_string)
print(new_string)
輸出:
python is my programming language
使用 string.translate()
方法去除 Python 字串中的多個字元
你還可以使用 string.translate()
方法從 Python 字串中刪除特定數量的字元。該函式的語法如下。
string.translate(table)
這個函式接受一個引數,table
。該表可以是描述要替換的字元的字典或對映表。你可以為 x 和 y 分配空值以去除字元。
例如:
s = "Python Programming"
x = "P"
y = "B"
table = s.maketrans(x, y)
print(s.translate(table))
輸出:
BythonBrogramming
總之,在 Python 中有三種常用方法可以從字串物件中去除字元。在這三個中,使用 replace()
方法進行剝離比其他方法容易得多,因為它更易於理解和使用。