如何使用 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日

805 次浏览

启动你的 职业生涯

通过完成课程获得认证

立即开始
广告