如何使用 Python 從字串中刪除字元?


以下是一些使用 Python 從字串中刪除字元的示例。

使用字串切片

在 Python 中,刪除字串中字元的最簡單方法之一是使用字串切片。以下是操作方法:

示例

在第一行程式碼中,我們定義了一個名為“my_string”的字串,其中包含文字“Hello World”。

在第二行程式碼中,我們透過建立一個名為“new_string”的新字串來刪除字元“o”。

我們透過將原始字串切分成兩部分來實現此目的 - “o”之前的字元和“o”之後的字元。

然後,我們將這兩部分連線起來以形成新字串。

最後,將新字串列印到控制檯。

# Define a string
my_string = "Lorem Ipsum"

# Remove the character "m"
new_string = my_string[:4] + my_string[5:]

# Print the new string
print(new_string)

輸出

Lore Ipsum

使用 replace() 方法

在 Python 中刪除字串中字元的另一種方法是使用 replace() 方法。以下是操作方法:

示例

在第一行程式碼中,我們定義了一個名為“my_string”的字串,其中包含文字“Hello World”。

在第二行程式碼中,我們使用 replace() 方法刪除字元“o”。

replace() 方法接受兩個引數 - 要替換的字元和替換字串。

在我們的例子中,我們希望用空字串替換字元“o”,因此我們將“”作為第二個引數傳遞。

replace() 方法返回一個新字串,其中指定字元已被替換。

最後,我們將新字串列印到控制檯。

# Define a string
my_string = "Lorem Ipsum"

# Remove the character "m"
new_string = my_string.replace("m", "")

# Print the new string
print(new_string)

輸出

Lore Ipsu

使用 join() 和列表推導式

在 Python 中刪除字串中字元的另一種方法是將字串轉換為字元列表,使用列表推導式刪除所需的字元,然後使用 join() 方法將列表轉換回字串。以下是操作方法:

示例

在第一行程式碼中,我們定義了一個名為“my_string”的字串,其中包含文字“Hello World”。

在第二行程式碼中,我們使用列表推導式將字串轉換為字元列表。

列表推導式遍歷字串中的每個字元,如果它不等於“o”,則將其追加到 char_list 變數。

在第三行程式碼中,我們使用 join() 方法將列表轉換回字串。

join() 方法接受一個字串序列作為其引數,並將它們連線成一個字串,並以呼叫它的字串作為分隔符(在我們的例子中,是一個空字串)。

最後,將新字串列印到控制檯。

# Define a string
my_string = "Lorem Ipsum"
# Remove the character "m"
char_list = [char for char in my_string if char != "m"]
new_string = "".join(char_list)

# Print the new string
print(new_string)

輸出

Lore Ipsu

使用 translate() 方法

在 Python 中刪除字串中字元的另一種方法是使用 translate() 方法。以下是操作方法:

示例

在第一行程式碼中,我們定義了一個名為“my_string”的字串,其中包含文字“Hello World”。

在第二行程式碼中,我們使用 translate() 方法刪除字元“o”。

translate() 方法接受一個字典,該字典將每個字元對映到其替換字元,並將字串中每個字元的所有出現都替換為其替換字元。

在我們的例子中,我們希望用空字元(即刪除)替換字元“o”,因此我們將 ord("o"): None 作為字典傳遞。

ord() 函式用於將字元轉換為其對應的 Unicode 程式碼點,它是字典中的鍵。

最後,我們將新字串列印到控制檯。

# Define a string
my_string = "Lorem Ipsum"

# Remove the character "m"
new_string = my_string.translate({ord("m"): None})

# Print the new string
print(new_string)

輸出

Lore Ipsu

使用 re.sub() 函式

在 Python 中刪除字串中字元的另一種方法是使用 re 模組中的 re.sub() 函式。以下是操作方法:

示例

在第一行程式碼中,我們匯入 re 模組,該模組為 Python 中的正則表示式提供支援。

在第二行程式碼中,我們定義了一個名為“my_string”的字串,其中包含文字“Hello World”。

在第三行程式碼中,我們使用 re.sub() 函式刪除字元“o”。

re.sub() 函式接受三個引數 - 要搜尋的模式、替換字串和輸入字串。

在我們的例子中,我們希望用空字串替換字元“o”,因此我們將“”作為第二個引數傳遞。

re.sub() 函式返回一個新字串,其中模式的所有出現都被替換為替換字串。

最後,將新字串列印到控制檯。

import re

# Define a string
my_string = "Lorem Ipsum"
# Remove the character "m"
new_string = re.sub("m", "", my_string)

# Print the new string
print(new_string)

輸出

Lore Ipsu

使用列表推導式和 join() 方法

在 Python 中刪除字串中字元的另一種方法是將字串轉換為字元列表,使用列表推導式刪除所需的字元,然後使用 join() 方法將列表轉換回字串。以下是操作方法:

示例

在第一行程式碼中,我們定義了一個名為“my_string”的字串,其中包含文字“Hello World”。

在第二行程式碼中,我們使用列表推導式將字串轉換為字元列表。

列表推導式遍歷字串中的每個字元,如果它不等於“o”,則將其追加到 char_list 變數。

在第三行程式碼中,我們使用 join() 方法將列表轉換回字串,該方法連線列表中的所有字元並返回一個新字串。

最後,我們將新字串列印到控制檯。

# Define a string
my_string = "Lorem Ipsum"

# Remove the character "o"
char_list = [char for char in my_string if char != "m"]
new_string = "".join(char_list)

# Print the new string
print(new_string)

輸出

Lore Ipsu

更新於: 2023年8月10日

809 次瀏覽

啟動你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.