Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 颠倒句子顺序的函数_Python - Fatal编程技术网

Python 颠倒句子顺序的函数

Python 颠倒句子顺序的函数,python,Python,我有以下代码: text = str(input('Input sentence, please: ')) def reverse(text): r_text = '' index = len(text) - 1 while index >= 0: r_text += text[index] index -= 1 return r_text print(reverse(text)) 但是输出是例如:Whats up-

我有以下代码:

text = str(input('Input sentence, please: '))

def reverse(text):
    r_text = ''
    index = len(text) - 1

    while index >= 0:
        r_text += text[index]
        index -= 1

    return r_text

print(reverse(text))
但是输出是例如:Whats up->pu stahW,我需要它->up Whats

换言之:

编写伪代码和一个函数的代码,该函数可以反转句子中的单词

输入

"This is awesome" 
输出

"awesome is This". 
用大O表示法

您可以这样做:

>>> " ".join("Hello world".split()[::-1])
'world Hello'
或者,如果您希望它出现在函数中:

>>> def reverse(text):
...     return " ".join(text.split()[::-1])
...
>>> reverse("Hello world")
'world Hello'
def reverse_sentence(s):
    l = s.split()
    l.reverse()
    return ' '.join(l)

split
应该可以工作。用空格把它分块。然后反转数组。最后在“”上加入反向数组

a = "What's up"

bits = a.split()
print(bits)   # yields: ["What's", 'up']

bits_reversed = bits[::-1]
print(bits_reversed)  # yields: ['up', "What's"]

print(' '.join(bits_reversed))
您可以使用
reverse()
函数查看
列表

s = "What's up"
l1 = s.split()
l1.reverse()
res = ' '.join(l1)
输出:

>>> res
"up What's"
>>> reverse_sentence("What's up")
"up What's"
在自定义函数中:

>>> def reverse(text):
...     return " ".join(text.split()[::-1])
...
>>> reverse("Hello world")
'world Hello'
def reverse_sentence(s):
    l = s.split()
    l.reverse()
    return ' '.join(l)
输出:

>>> res
"up What's"
>>> reverse_sentence("What's up")
"up What's"

我认为
split
的论点是多余的。(
.split()
足够了)@Alec很好,不完全是这样。在没有参数的情况下,它会在任何空白处拆分,而不仅仅是在空白处。但是,我不确定哪一个是最好的。我得到了一个奇怪的输出:
[“What's”,“up'][“up',“What's”]up What's
加入
'
上的数组查看edit@ErikTonev这是因为有三个打印语句来显示答案的作用。是的,哈哈,我删除了其中的两个,但是是的,它做得很好