Python我需要重新排列lis中字符串元素的字符

2024-04-25 01:20:42 发布

您现在位置:Python中文网/ 问答频道 /正文

所以我有一个函数,它接受一个字符串输入并将其转换成猪拉丁语。

对于所有以辅音开头的单词(除了元音以外的所有单词),我必须将该单词的第一个字母移到后面,然后在单词中添加“ay”。

例如,“like”会变成“ikelay”。

在我的程序中,首先分割给我的字符串输入,然后检查新创建的列表中的每个元素,看看该元素的第一个字符是元音、辅音还是其他字符。

def simple_pig_latin(input, sep=" ", end="."):
    splitinput = input.split(sep)
    for i in splitinput:
        if splitinput[splitinput.index(i)][0] in ['a','e','i','o','u']:
            splitinput[splitinput.index(i)] = str(i) + "way"
        elif splitinput[splitinput.index(i)][0] in ['b','c','d','f','g','h','j','k','l','m','n','p','q','r','s','t','v','w','x','y','z']:
            splitinput[splitinput.index(i)] = str(i) + "ay"
        else:
            continue
    finalstring = ' '.join(splitinput)
    finalstring = finalstring + end


simple_pig_latin("i like this")

注意,在elif分支中,我应该把我的第一个字母放在这个单词的末尾,然后加上“ay”。给定输入字符串“i like this”我应该将第二个单词(因为like以l开头,使其成为辅音)转换为“ikelay”如何重新排列like,使其成为ikel?


Tags: 字符串in元素index字母simple字符单词