在 Python 中去除多個字元

Sidrah Abdullah 2023年10月10日
  1. 使用 str.replace() 去除 Python 字串中的多個字元
  2. 使用 re.sub() 函式去除 Python 字串中的多個字元
  3. 使用 string.translate() 方法去除 Python 字串中的多個字元
在 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() 方法進行剝離比其他方法容易得多,因為它更易於理解和使用。

相關文章 - Python String