选择单词中的第一个辅音(跟随多个元音)

莱诺布

嗨,我正在尝试制作一个猪拉丁语翻译器,当我尝试处理以元音开头的单词时出现了问题。目的是,对于以元音开头的单词,后缀将是单词 + "ay" 中第一个辅音(而不是单词 + "ay" 中的第一个字母)例如 'ear' 将是 '耳朵射线'而不是'ar-eay'

但是,我正在努力寻找一种方法来做到这一点。

这是我到目前为止所拥有的:(它取自较大的代码部分)

elif word[0]=="a" or word[0]=="e" or word[0]=="i" or word[0]=="o" or word[0]=="u":
    for letter in word[1:]:
      while consonantfound == False:
        if letter!="a" and letter!="e" and letter!="i" and letter!="o" and letter!="u":
          consonantfound = True
          consonant = letter
    suffix = consonant + "ay"
    newWord = i + "-" + suffix

这使得程序无法产生输出并继续运行。

我觉得问题与循环的顺序有关,但我已经尝试过,但没有解决方案。这也可能是我不知道的其他事情。

你有关于如何使它工作的建议吗?

任何帮助都感激不尽。

粗短的天使9

试试这个:

VOWELS = ('a', 'e', 'i', 'o', 'u')

def first_consonant(word):
    for letter in word:
        if letter.lower() not in VOWELS:
            return letter

def pig_latin(word):
    return '%s-%say' % (word, first_consonant(word) or word[0])

它试图找到单词中的第一个辅音并将 ay 附加到末尾。如果它不存在,则它遵循单词的第一个字母(我不知道这是否正确,但您可以根据自己的需要进行调整)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在Python中找到单词的第一个元音

Python代码-使用元音返回字符串中的第一个单词

选择<P>中的第一个单词

Javascript:如何遍历单词并切掉第一个元音之后的字符?

Java 返回我选择的最长单词,但返回列表中的第一个单词而不是最后一个

用Vim从多行中的每一行中选择第一个单词

MySQL查询以选择字段中的第一个单词并返回计数

当组件在多个选择中呈现时,如何取消选择第一个选项?

第一个选择中的第一个选择的mySQL使用结果

PHP变量输出仅显示两个或多个单词中的第一个单词

在Javascript的句子(多个句子)的第一个和最后一个单词中添加方括号

SQL中的第一个单词集

txt 文件中第一个单词的总数

从Smarty Variable中获取第一个单词

Java:删除拆分中的第一个单词

替换熊猫列中的第一个单词

在python中查找单词的第一个实例

从 <td> 中删除第一个单词

如何在String Swift中获得第一个元音

如何找到字符串中第一个元音的索引?

如果有多个单词,则提取逗号后字符串中的最后一个单词,否则第一个单词

如何删除列中的第一个单词和最后一个单词?

乱码未正确跟随分页,捕获了分页中的第一个链接

Vim:将选择的每一行的第一个单词替换为列表中的数字

PHP-搜索多个单词并使用找到的第一个单词作为变量

如何根据行的第一个单词替换同一文件中的多个模式?

选择嵌套div中的第一个孩子

选择div中的第一个元素

选择几组中的第一个元素