我在闲置时玩python3,在发现Pig Latin之后我正在尝试编写几个函数,并且对于从哪里开始/我应该使用哪些python特定的单词/函数感到困惑。
(i)1个参数 - 我正试图将猪拉丁语中的单词翻译成英语。它总是以“ay”结尾,只有一个连字符。基本上我试图删除猪拉丁词结尾的hypen和“ay”。我相信我需要从找到连字符的位置开始。然后我希望它从字符串2子串中提取:连字符前面的部分和连字符和末尾“ay”之间的部分。例如,当给出字符串“at-thay”时,两个子串是“at”和“th”。在此之后,我想结合两个子串来创建英语单词。 (上面的例子将返回“那个”)
(ii)我想要一个带有单个参数的函数,一个字符串,并找到该字符串中出现任何字符“aeiouAEIOU”的第一个位置。例如,给定字符串“is”,您的函数应返回0,并且给定字符串“Pig”,我希望函数返回1.如果字符串中根本没有任何列出的元音,例如与字符串“shh”一样,函数应返回字符串的长度,在本例中为3。
(iii)我想要一个函数,它返回从英语到Pig Latin的单个单词的翻译。翻译包括从第一个元音开始到连字符,在第一个元音之前的单词部分和字母“ay”的所有内容。
我知道这是一个很高的命令,但任何这3个任何帮助都会有很大的帮助!
答案 0 :(得分:0)
def unPigWord( word ):
"""This function takes any Pig Latin word and returns that word in English."""
parts = word.split( "-" )
return parts[1][0: len(parts[1])-2] + parts[0]
def findVowel( word ):
for i, char in enumerate( word ):
if char in "aeiouAEIOU":
return i
return i + 1
def pigWord( word ):
fvi = findVowel( word )
return word[fvi:] + "-" + word[0:fvi] + "ay"