12

如何在 Python 中反转单词?

例如:

SomeArray=('Python is the best programming language')
i=''
for x in SomeArray:
      #i dont know how to do it

print(i)

结果必须是:

egaugnal gnimmargorp tseb eht si nohtyP

请帮忙。并解释。
PS:
我不能用[::-1]。我知道这件事。我必须在面试中这样做,只使用循环:)

4

3 回答 3

20
>>> s = 'Python is the best programming language'
>>> s[::-1]
'egaugnal gnimmargorp tseb eht si nohtyP'

升级版:

如果需要循环执行,可以使用 range 向后退:

>>> result = ""
>>> for i in xrange(len(s)-1, -1, -1):
...     result += s[i]
... 
>>> result
'egaugnal gnimmargorp tseb eht si nohtyP'

或者,reversed()

>>> result = ""
>>> for i in reversed(s):
...     result += i
... 
>>> result
'egaugnal gnimmargorp tseb eht si nohtyP'
于 2013-09-18T12:08:38.270 回答
4

使用切片符号:

>>> string = "Hello world."
>>> reversed_string = string[::-1]
>>> print reversed_string
.dlrow olleH

您可以在此处阅读有关切片记谱法的更多信息。

于 2013-09-18T12:16:16.767 回答
2

Python 中的字符串是一个字符数组,因此您只需向后遍历数组(字符串)。您可以像这样轻松地做到这一点:

"Python is the best programming language"[::-1]

这将返回"egaugnal gnimmargorp tseb eht si nohtyP"

[::-1]从头到尾遍历一个数组,一次一个字符。

于 2013-09-18T12:11:02.043 回答