在此程序中,您将学习使用字典和列表理解来计算字符串中每个元音的数量。
源代码:使用字典
# Program to count the number of each vowels
# string of vowels
vowels = 'aeiou'
ip_str = 'Hello, have you tried our tutorial section yet?'
# make it suitable for caseless comparisions
ip_str = ip_str.casefold()
# make a dictionary with each vowel a key and value 0
count = {}.fromkeys(vowels,0)
# count the vowels
for char in ip_str:
if char in count:
count[char] += 1
print(count)
输出
{'o': 5, 'i': 3, 'a': 2, 'e': 5, 'u': 3}
在这里,我们采用了存储在ip_str的字符串 。使用casefold()方法,我们使其适合无条件比较。基本上,此方法返回字符串的小写版本。
我们使用字典方法fromkeys()构造一个新的字典,每个元音作为其键并且所有值等于0。这是计数的初始化。
接下来,我们使用for循环遍历输入字符串 。
在每次迭代中,我们检查字符是否在字典键中(如果是元音则为True ),如果为true,则将值增加1。
源代码:使用列表和字典理解
# Using dictionary and list comprehension
ip_str = 'Hello, have you tried our tutorial section yet?'
# make it suitable for caseless comparisions
ip_str = ip_str.casefold()
# count the vowels
count = {x:sum([1 for char in ip_str if char == x]) for x in 'aeiou'}
print(count)
该程序的输出与上面的相同。
在这里,我们将列表推导嵌套在字典推导中,以在一行中计算元音。
但是,由于我们迭代每个元音的整个输入字符串 ,因此该程序的速度较慢。
0
相关文章:从Python获取输入 开发人员通常需要与用户进行交互,以获取数据或提供某种结果。如今,大多数程序都使用对话框来要求用户提供某种类型的 […]...
Python中的any和all Any和All是Python提供的两个内置插件,用于连续的And / Or。 Any 如果任何一项为True, […]...
Python中的First Class函数 一门语言中的First Class对象始终都得到统一处理。它们可以存储在数据结构中,可以作为参数传递,也可以在 […]...
Python中的内置异常 Python中的所有实例必须是从BaseException派生的类的实例。通过子类不相关的两个异常类,即使它们 […]...
Python中的Oracle数据库连接 有时,作为编程的一部分,我们需要使用数据库,因为我们要存储大量信息,因此我们使用数据库,例如Oracle,My […]...
Python中的等分算法函数bisect Python在其定义中使用模块“ bisect ” 提供了bisect算法,该模块允许在插入每个元 […]...
Numpy 字符串运算 此模块用于对dtype numpy.string_或numpy.unicode_的数组执行矢量化字符串操作。它 […]...
Python | 使用sklearn进行决策树回归 决策树是使用类似于流程图的树形结构的决策工具,或者是决策及其所有可能结果(包括结果,投入成本和效用)的模型。 […]...