Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/296.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 使用reverse函数反转部分,使字符串的最后一部分成为另一个字符串的第一部分_Python_Reverse - Fatal编程技术网

Python 使用reverse函数反转部分,使字符串的最后一部分成为另一个字符串的第一部分

Python 使用reverse函数反转部分,使字符串的最后一部分成为另一个字符串的第一部分,python,reverse,Python,Reverse,这个程序将英语打印成摩尔斯电码,然后我尝试在下面的主程序中反转摩尔斯电码。我提供了一个示例输入,其中包含我得到的和预期的输出。基本上,我不希望每个/-都被颠倒,我只需要最后一个莫尔斯字符是第一个,第四个是第二个,以此类推 normal morse output: .... . .-.. .-.. --- reverse output I get: --- ..-. ..-. . .... expected output revers

这个程序将英语打印成摩尔斯电码,然后我尝试在下面的主程序中反转摩尔斯电码。我提供了一个示例输入,其中包含我得到的和预期的输出。基本上,我不希望每个
/
-
都被颠倒,我只需要最后一个莫尔斯字符是第一个,第四个是第二个,以此类推

normal morse output:     ....    .    .-..    .-..    ---
reverse output I get:    ---    ..-.    ..-.    .    .... 
expected output reverse: ---    .-..    .-..    .    ....
要反转输出的每个块(即字符),您可以使用空格
str.split
获取莫尔斯字符,然后反转该列表,然后再次使用空格
str.join

def reverse_morse(text):
    return ' '.join(text.split()[::-1])

>>> reverse_morse('.... . .-.. .-.. ---')
'--- .-.. .-.. . ....'

为什么你不直接反向迭代输入字母?有更简单的语法吗?@wiskah这只是一行代码,有什么更简单的呢?语法对我来说没有意义,你能使用反向函数吗?
def reverse_morse(text):
    return ' '.join(text.split()[::-1])

>>> reverse_morse('.... . .-.. .-.. ---')
'--- .-.. .-.. . ....'