#coding=utf-8
def reverseVowels(s):
"""
:type s: str
:rtype: str
"""
sStr = list(s)
voList = {'a':0, 'A':0, 'e':0, "E":0, 'i':0, "I":0, 'o':0, 'O':0, 'u':0, 'U':0}
front = 0
length = len(sStr)
back = length - 1
while front < back:
while front < length and sStr[front] not in voList:
front += 1
while back >= 0 and sStr[back] not in voList:
back -= 1
if front < back:
sStr[front], sStr[back] = sStr[back], sStr[front]
front += 1
back -= 1
return "".join(sStr)
str="hello world!"
print(reverseVowels(str))
输出
hollo werld!
或
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:579817333
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
#coding=utf-8
def reverseVowels(s):
"""
:type s: str
:rtype: str
"""
sStr = list(s)
voList = {'a':0, 'A':0, 'e':0, "E":0, 'i':0, "I":0, 'o':0, 'O':0, 'u':0, 'U':0}
front = 0
length = len(sStr)
back = length - 1
while(1):
while front < length and sStr[front] not in voList:
front += 1
while back >= 0 and sStr[back] not in voList:
back -= 1
if front < back:
sStr[front], sStr[back] = sStr[back], sStr[front]
front += 1
back -= 1
else:
break
return "".join(sStr)
str="hello world!"
print(reverseVowels(str))