Python 如何处理带有字符串循环的空格?

Python 如何处理带有字符串循环的空格?,python,string,loops,replace,Python,String,Loops,Replace,对于我在hackerrank的任务,ı需要编写一个程序,以字符串作为输入,并以倒序和反向字符返回该字符串,这意味着像“hELLO wORLD”这样的输入应该返回为“hELLO wORLD”,ı完成了所有工作,但当ı尝试运行它时,它会停止在空格上,不知道如何解决 def reverse(sentence): mylist = [] splitted = sentence.split(" ") for i in range(len(splitted)): mylist.a

对于我在hackerrank的任务,ı需要编写一个程序,以字符串作为输入,并以倒序和反向字符返回该字符串,这意味着像“hELLO wORLD”这样的输入应该返回为“hELLO wORLD”,ı完成了所有工作,但当ı尝试运行它时,它会停止在空格上,不知道如何解决

def reverse(sentence):
mylist = []
splitted = sentence.split(" ")
for i in range(len(splitted)):
    mylist.append(splitted[-1])
    splitted.pop(-1)
    
for i in mylist:
    chars = []
    for char in i:
        if char.islower():
            char = char.upper()
            chars.append(char)
        elif char.isupper():
            char = char.lower()
            chars.append(char)
        else:
            char = char
            chars.append(char)
    print(chars)
    newmessage = ""
    for i in chars:
        newmessage += str(i)
    print(newmessage)
反面(“helLoWorld”)

反向(“hELLO wORLD”)

您可以检查Chris Charley的评论,但如果您想使用代码,您可以跳过拆分句子以保留空格

def reverse(sentence):
    # mylist = []
    # splitted = sentence.split(" ")
    # for i in range(len(splitted)):
    #     mylist.append(splitted[-1])
    #     splitted.pop(-1)

    chars = []
    for i in sentence:
        for char in i:
            if char.islower():
                char = char.upper()
                chars.append(char)
            elif char.isupper():
                char = char.lower()
                chars.append(char)
            else:
                char = char
                chars.append(char)
        # print(chars)
    newmessage = ""
    for i in chars:
        newmessage += str(i)
    print(newmessage)


reverse('hELLO wORLD')
输出:

Hello World

请参阅“谢谢”,但是,ı必须重写具有后序的字符串,如输入为“hello world”,则应提示“world hello”。这就是为什么我要用split。嗯,你可以在收到新消息后用split来改变句子的顺序。
Hello World