用于字符串重新排列的python代码
有人能帮我翻译python代码吗?该代码将单词/字符串转换为如下形式:将所有辅音移到元音之前-辅音和元音的顺序应与原始字母的顺序相反。-如果结果中两个相等的字母相邻(不区分大小写的重复项),请在源代码中删除第二个字母 我试过这个:用于字符串重新排列的python代码,python,Python,有人能帮我翻译python代码吗?该代码将单词/字符串转换为如下形式:将所有辅音移到元音之前-辅音和元音的顺序应与原始字母的顺序相反。-如果结果中两个相等的字母相邻(不区分大小写的重复项),请在源代码中删除第二个字母 我试过这个: def vowels(x): vowel = ["a", "e", "i", "o", "u", "A", "E", "I", "O", "U"] if x in vowel: return True else:
def vowels(x):
vowel = ["a", "e", "i", "o", "u", "A", "E", "I", "O", "U"]
if x in vowel:
return True
else:
return False
def transform_word(word):
result = ""
if word is not None:
x = len(word) - 1
v = ""
c = ""
while x is not -1:
if (vowels(word[x])):
v += word[x]
x -= 1
else:
c += word[x]
x-=1
result = c + v
result = "".join(OrderedDict.fromkeys(result))
return result
从概念上讲,应该可以使用更糟糕的字符串连接
def isvowel(ch):
if ch in ["A", "E", "I", "O", "U", 'a','e','i','o','u']:
return True
else:
return False
vowels = []
consonants = []
for letter in word:
if isvowel(letter):
vowels.append(letter)
else:
consonants.append(letter)
result = ''
for consonant in consonants:
result+=consonant
for vowel in vowels:
result+=vowel
print result
我们不是免费的家庭作业服务。我尝试了以下方法:def元音(x):元音=[“a”、“e”、“I”、“o”、“u”、“a”、“e”、“I”、“o”、“u”]如果x在元音中:返回True否则:返回False def transform_word(word):result=“”如果单词不是None:x=len(word)-1 v=“”c=“”而x不是-1:if(元音(单词[x]):v+=word[x]x-=1其他:c+=word[x]x-=1 result=c+v result=“”.join(OrderedDict.fromkeys(result))return result您尝试了什么代码?@Anna编辑您的问题并在问题中添加代码,并确保其格式正确。准确地解释在您的环境中不起作用的是什么code@Anna好啊伟大的现在解释什么不起作用。您是否收到任何错误消息。代码是否正常工作,但您得到了意外的输出?您需要在此处提供一个。我想您的意思是
upper()
而不是toupper()
我不确定这是更好的字符串连接。将每个字符添加到列表中并使用字符串联接是最好的方法