如何从Python中的字符串中删除元音?

字符串是一种数据类型,可以由字母、数字和符号的任意组合组成。字符串可以包含借用英语的字母的元音和辅音。在本文中,我们将使用 Python 从字符串中删除元音。可以部署不同的技术来在 Python 中完成此任务。

  • 循环法
  • 使用正则表达式
  • 迭代器和连接技术

每个列出的方法都使用排他逻辑来定义输入字符串,然后删除与其关联的元音。简而言之,这些技术利用循环或公式来检查并从给定字符串中删除列出的元音,然后返回不带任何元音的输出字符串。


方法一——循环法

此方法将循环搜索给定输入字符串中的元音。这里值得注意的一点是,我们在声明字符串中检测的内容时同时包含大写和小写元音。这样做是为了考虑字符串中可用字母的不同情况的影响。

我们首先将指定hippopotamus作为输入字符串,然后列出所有要识别并从字符串中删除的元音。我们还将定义一个变量result为空。

string = "hippopotamus"
vowels = {'a', 'e', 'i', 'o', 'u', 'A', 'E', 'I', 'O', 'U'}
result = ""
分配输入字符串和元音

现在我们将使用for 循环与if语句相结合来创建迭代,以将结果提取为不带元音的字符串。下面看看它的构造。

for i in range(len(string)):
    if string[i] not in vowels:
        result = result + string[i]
构建元音去除代码

完成后,应使用打印函数返回结果。

print("\n After removing Vowels:", result)
显示结果

当代码运行时,返回以下结果。

不带元音的结果字符串

方法 II – 使用正则表达式

可以部署从输入字符串中删除元音的另一种技术是使用“re” – 正则表达式。我们将首先从 Python 的标准库导入它,然后定义一个自定义模块。在此模块中,我们将提供说明如何从输入字符串中删除元音的条件。

import re
def rem_vowel(string):
    return(re.sub("[aeiouAEIOU]","",string))
创建自定义函数来删除元音

使用print语句声明输入字符串并返回输出,如下所示。

string = "Hippopotamus"
x = rem_vowel(string)
print(x)
结果删除元音

方法 III – 迭代器和连接技术

这是一个两步方法,其中第一步从字符串中提取辅音,然后将辅音连接在一起形成单词。让我们开始定义字符串和元音,如下所示。

声明元音输入字符串

接下来构造一个变量“ result ”,其中包含一组指令,用于删除输入字符串中的元音并仅返回辅音。但是需要注意的是,返回值不会是单词的形式,而是如下所示的分隔字母的形式。

result = [letter for letter in string if letter.lower() not in vowels]
print(result)
孤立辅音返回

现在是时候使用 join 命令来连接孤立的字母了,如下所示。

final = ''.join(result)
print(final)
使用 Join 函数组合辅音

结论

我们探索了三种不同的技术来使用 Python 从给定的输入字符串中删除元音。每种方法都提供了独特的方法,从使用循环和条件到使用正则表达式或迭代器和连接技术。有多种可用的方法可以让您根据您的特定文本处理需求选择最合适的方法。继续学习和尝试 Python,以提高您的技能并扩展您的工具包以应对各种挑战。您可能还有兴趣学习如何在 Python 中将十六进制转换为 RGB 值


参考: