You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

能否通过单次遍历Python字典推导式同时计算元音与辅音值的和?

单次遍历同时计算元音和辅音对应值的总和

当然可以!完全不用对字典做两次遍历,一次循环就能同时算出元音和辅音对应值的总和,效率更高,代码也更简洁。

先把你给出的变量定义好,然后直接看实现逻辑:

# 定义给定的元音、辅音列表和键值对字典
vowels = ['a','e','i','o','u']
consonants = ['b','c','d','f','g','h','j','k','l','m','n','p','q','r','s','t','v','w','x','y','z']
letter_number_pairs = {'a': 1,'b': 8,'c': 3,'f': 3,'h': 8,'i': 2,'l': 4,'p': 2,'q': 1,'s': 5,'u': 9,'w': 0,'y': 5,'z': 2}

# 初始化两个总和变量
vowel_sum = 0
consonant_sum = 0

# 单次遍历字典的键值对
for letter, value in letter_number_pairs.items():
    if letter in vowels:
        vowel_sum += value
    elif letter in consonants:
        consonant_sum += value

# 输出结果
print(f"元音对应值总和: {vowel_sum}")
print(f"辅音对应值总和: {consonant_sum}")

逻辑解释:

  • 先初始化两个总和变量vowel_sum和consonant_sum为0,用来分别累加对应的值。
  • 通过items()方法遍历字典的每一组键值对,一次循环就能拿到每个字母和它对应的值。
  • 每次循环判断当前字母属于元音还是辅音,把对应的值加到对应的总和变量里。
  • 遍历结束后,两个总和就都计算完成了。

运行这段代码后,你会得到:

元音对应值总和: 12
辅音对应值总和: 41

这样就通过一次遍历完成了两个总和的计算,避免了重复遍历字典的开销,尤其是当字典数据量很大的时候,这种方式优势更明显。

内容的提问来源于stack exchange,提问作者John Forbes

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 04:24:23