python统计元音总数_python – 元音序列计数

这不是一个家庭作业问题,而是一个考试准备问题.

我应该定义一个功能音节(单词)来计算音节的数量

用以下方式说一句话:

•最大元音序列是一个音节;

•单词中的最后一个不是音节(或者是元音序列,它是一个部分

的).

我不需要处理任何特殊情况,例如a.中的最终情况

单音节词(例如,’be’或’bee’).

>>> syllables(’honour’)

2

>>> syllables(’decode’)

2

>>> syllables(’oiseau’)

2

我应该在这里使用正则表达式还是只列出理解?

最佳答案 我发现这个问题的正则表达式很自然. (我认为非正则表达式的答案需要更多编码.我使用两种字符串方法,’lower’和’endswith’来使答案更清晰.)

import re

def syllables(word):

word = word.lower()

if word.endswith('e'):

word = word[:-1]

count = len(re.findall('[aeiou]+', word))

return count

for word in ('honour', 'decode', 'decodes', 'oiseau', 'pie'):

print word, syllables(word)

哪个印刷品:

honour 2

decode 2

decodes 3

oiseau 2

pie 1

请注意,“解码”比“解码”还有一个音节(这很奇怪,但符合您的定义).

题.这对你有什么帮助?研究问题的重点不是你自己完成的吗?通过在您的问题中发布失败尝试,您将来可能会获得更多好处,因此您可以准确了解您缺少的位置.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值