使用元组Python反转输入

时间:2016-02-08 00:08:17

标签: python

我希望能够编写将“Hello World”等短语反转为“World Hello”的功能。到目前为止,我可以到达:

def reverser():
    print('Please input a phrase')
    inputphrase=input()
    if ' ' in inputphrase:

在此之后,我假设您需要切片,然后该切片存储在元组中,最后变量将打印出来。

4 个答案:

答案 0 :(得分:1)

它将存储在list中,而不是tuple中。以下是两行中的操作方法:

my_input = input('Your phrase: ')
print(*reversed(my_input.split()))  # Python 3

print ' '.join(reversed(a.split()))  # Python 2

所以函数将是:

func = lambda x: reversed(x.split())

如果调用如下,将返回短语中的反转单词列表:

arg = input('Enter a phrase :')
splitted = func(arg)

print(*splitted)  # or in Python 2: print ' '.join(splitted)

答案 1 :(得分:0)

您可以使用内置的reversed

def reverser():
    return ' '.join(reversed(input('Please input a phrase:').split()))

输入字符串在空格上分割,然后传递给反转,然后再次连接

例如,将其用作

>>> print(reverser())
Please input a phrase:hello world how are you
you are how world hello

答案 2 :(得分:0)

>>> inputphrase = "Hello World"
>>> parts = inputphrase.split(' ')
>>> parts.reverse()
>>> ' '.join(parts)
'World Hello'

您无需测试if ' ' in inputphrase:,因为parts在这种情况下只包含一个项目。

让您的功能有一个目的是个好主意。您应该有一个用于获取输入的函数,另一个用于反转它。

答案 3 :(得分:0)

  

Python编程语言提供了一种简洁的语法来反转a   tuple。语法为var[::-1],它返回var的反向副本。

     

示例:

def reverser():
    inputphrase = tuple(x.strip() for x in raw_input("Please input a phrase: ").split(' '))
    return inputphrase[::-1]

print reverser()
  

输出:

Please input a phrase: Hello World 
('World', 'Hello')
  

或者你可以这样做。

def reverser():
            inputphrase = tuple(x.strip() for x in raw_input("Please input a phrase: ").split(' '))
            return tuple(reversed(inputphrase))

print reverser()
  

输出:

Please input a phrase: Hello World. 
('World.', 'Hello')