将句子转换为猪拉丁语?

3 投票
1 回答
531 浏览
提问于 2025-04-18 01:20

我正在尝试把一个句子转换成猪拉丁语,但我搞不定。

条件如下:

1. 如果单词以元音字母开头,就在单词后面加上“way”(例如,eagle变成eagleway)。

2. 如果单词以辅音字母开头,就要检查第二个字母,依此类推,只要是辅音字母就继续检查,把这些辅音字母去掉,然后放到单词的最后面(例如,grain变成aingr)。

这是我目前写的代码:

x = "The apple is extremely tasty. Great!"
y = x.split()
for i in y:
    if(i[0] == "a" or i[0]=="e" or i[0]=="i" or i[0]=="o" or i[0]=="u"):
        print(i+"way", end = " ")

我已经完成了第一部分,但我搞不定第二部分。我不明白怎么逐个检查字母并去掉那些部分。

任何帮助都非常感谢。

谢谢。

1 个回答

4

首先,选择更好的变量名称:

sentence = "The apple is extremely tasty. Great!"
words = sentence.split()
for word in words:

其次,你可以简化你的第一个检查:

    if word[0] in "aeiou":
        print("{0}way".format(word), end=" ")

最后,你可以使用 while 循环和切片,把单词开头的字符移动到结尾:

    else:
        while word[0] not in "aeiou":
            word = "".join((word[1:], word[0]))
        print(word, end=" ")

注意,这样做还是没有完全达到你的目的:

eTh appleway isway extremelyway asty.t eat!Gr 

我建议你自己处理字母的大小写和标点符号;可以考虑把所有字母统一成一种大小写,并在遍历 words 之前去掉所有标点符号。

撰写回答