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

如何修改Python代码计算分段文本元音数量并比较各段数量是否相等

按空格分段计算元音并比较数量的解决方案

修改后的完整代码

text = input('Input your text: ')
segments = text.split(' ')
# 包含大小写元音,避免漏算(若只需小写可去掉大写部分)
vowels = set("aeiouAEIOU")
vowel_counts = []

# 遍历每个分段计算元音数
for seg in segments:
    count = 0
    for letter in seg:
        if letter in vowels:
            count += 1
    vowel_counts.append(count)
    print(f"分段 '{seg}' 的元音数量: {count}")

# 判断所有分段的元音数量是否相等
if len(set(vowel_counts)) == 1:
    print("所有分段的元音数量相等")
else:
    print("各分段的元音数量不相等")

代码修改说明

  1. 保留分段逻辑:split(' ')会按单个空格分割文本,得到你需要的分段列表。如果输入存在连续空格,会生成空字符串分段,若要自动忽略连续空格,可改用text.split()(不带参数)。
  2. 分段计算元音:不再遍历整个文本,而是循环处理每个分段,单独统计每个分段的元音数量,并将结果存入vowel_counts列表。
  3. 大小写兼容:把元音集合扩展为包含大小写,避免输入中有大写元音时漏统计。
  4. 数量比较:通过将vowel_counts转为集合(集合自动去重),若集合长度为1,说明所有分段的元音数相等;反之则不相等。也可以用all(count == vowel_counts[0] for count in vowel_counts)实现相同逻辑,两种方式任选即可。

测试示例

输入la-lala-la la-lalala-la时:

  • 第一个分段la-lala-la的元音数为4
  • 第二个分段la-lalala-la的元音数为5
  • 最终输出各分段的元音数量不相等

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 03:33:15