Python - 从字符串中删除不需要的字符

pythonserver side programmingprogramming

Python 是一种非常常用的程序,可用于各种目的,如 Web 开发、数据科学、机器学习,也可用于执行自动化的不同流程。在任何应用领域工作时,我们都必须处理一个常见的东西,即字符串。因此,在本文中,我们将学习如何从字符串中删除不需要的字符。

替换

在此方法中,我们只需指定不需要的元素,然后删除该元素,并在字符串中留出一个空位。我们可以通过以下示例更好地理解它

示例

def unwanted_string_words(data, sentence): #提供输入
    for sent in sentence: #检查字符串中的不同字符
        data = data.replace(sent, '') #从字符串中删除不需要的字符
        return data

#示例
whole_string = "Hi! My Name Is, John"
to_be_removed = "!,"
final_string =unwanted_string_words(whole_string, to_be_removed)
print(final_string)

输出

上述代码的输出将如下所示:

Hi My Name Is John

re module

在此方法中我们将使用正则表达式模块从字符串中删除字符。我们可以从以下示例中了解其用法:

示例

import re # 不要忘记导入 re 模块,否则可能会出错

def unwanted_string_words(data, sentence): # 输入已提供
    pattern = "[" + re.escape("".join(sentence)) + "]" # 我们将使用 re.escape 连接所有字符
    return re.sub(pattern, "", data) # 然后我们将使用 re.sub 删除不需要的字符

# 示例
whole_string = "Hi! My Name Is, John"
to_be_removed = "!,"
final_string =unwanted_string_words(whole_string, to_be_removed)
print(final_string)

输出

上述示例的输出如下:

Hi My Name Is John

列表理解

通过这种方法,我们将在从原始字符串中删除所有不需要的字符后,创建一个仅包含所需字符的新列表。我们可以通过以下示例清楚地理解它:

示例

def unwanted_string_words(data, sentence): #提供输入
    return ''.join([sent for sent in data if sent not in sentence]) # 检查字符串中的所有字符,将不被删除的字符移动到新列表中,并删除一些字符。

# 示例
whole_string = "Hi! My Name Is, John"
to_be_removed = "!,"
final_string =unwanted_string_words(whole_string, to_be_removed)
print(final_string)

输出

上述示例的输出如下:

Hi My Name Is John

Translate 方法

这是一种非常有用的方法,可以从字典列表中删除字符。要删除的字符在翻译表中指定,并相应地删除。使用translate方法删除字符的示例如下:

示例

def unwanted_string_words(data, sentence): #提供字符串输入
    Translation_table_characters = str.maketrans('', '', ''.join(sentence)) #使用str.maketrans制作翻译表,并指定要删除的字符
    return data.translate(translation_table_characters) #使用str.translate删除字符并提供空格

#示例
whole_string = "Hi! My Name Is, John"
to_be_removed = "!,"
final_string =unwanted_string_words(whole_string, to_be_removed)
print(final_string) 

输出

上述示例的输出如下:

Hi My Name Is John

过滤函数

顾名思义,在此方法中,我们将指定一些过滤器来从字符串中删除一些字符。这是从字符串中删除字符的最简单的方法之一。我们可以通过下面的例子更清晰的理解:

示例

def unwanted_string_words(data, sentence): # 给定字符串的输入
    unwanted_string_words = filter(lambda sent: sent not in sentence, data) #Filter 会检查字符串的所有字符
    # Lambda 会在整个字符串中查找不需要的字符
    return ''.join(unwanted_string_words) # 删除不需要的字符后,剩余的字符会移动到新列表中

# 示例
whole_string = "Hi! My Name Is, John"
to_be_removed = "!,"
final_string =unwanted_string_words(whole_string, to_be_removed)
print(final_string) 

输出

上述示例的输出如下:

嗨,我的名字是约翰

列表和连接

在此方法中,将整个字符串创建为字符,然后检查所有字符并从列表中删除所有不需要的字符。我们可以通过以下示例更好地理解它:

示例

def unwanted_string_words(data, sentence): # 提供字符串输入
    unwanted_string_words = [sent for sent in data if sent not in sentence] # 将使用列表推导式检查每个字符,并删除不需要的字符
    return ''.join(unwanted_string_words) # 将剩余的字符连接起来形成一个字符串

# 示例
whole_string = "Hi! My Name Is, John"
to_be_removed = "!,"
final_string =unwanted_string_words(whole_string, to_be_removed)
print(final_string)

输出

上述示例的输出如下:

Hi My Name Is John 

结论

编辑程序中的字符串是程序员常见的过程。因此,了解上述所有方法对于成为一名高效、快速的程序员非常必要。您可以参考本文了解从字符串中删除字符的许多不同方法。


相关文章