如何使用列表和pop()在python中反转字符串

时间:2015-11-14 10:43:06

标签: python

我正在编写一个函数来取一个字符串并将其反转。我无法理解为什么我的代码返回一个反向字符串,但只有一半字符串传递给它。

Activated

6 个答案:

答案 0 :(得分:4)

我不会发表完整的答案,但是:

  1. 请勿使用for循环修改您正在迭代的列表。糟糕的事情会发生(你已经意识到了)

  2. 因此,您可以使用while循环来完成任务。

  3. 您也可以使用for循环,但最终会得到for i in range(len(temp)):(请参阅其他答案),range(len(..))构造相当“unpythonic” 。

答案 1 :(得分:1)

def reverse(text)
    return text[::-1]

答案 2 :(得分:0)

我会使用reversedString = string[::-1],这是我认为最简单的方法。

答案 3 :(得分:0)

for i in range(len(text)):
    reverse_text += temp.pop()

不要更改字符串。

答案 4 :(得分:0)

每次进行弹出操作时,您都会改变迭代的温度。

一种简单的方法就是弹出n次,其中n是temp的长度

def reverse(text):
    temp = []
    reverse_text = ""
    for i in text:
        temp.append(i)
    print temp
    for i in range(len(temp)):
#         print i, temp[i]
        reverse_text += temp.pop()
    print reverse_text

答案 5 :(得分:0)

如果你做不到:

text[::-1]

尝试执行for循环:

text = 'Hello'
product=''
for x in range(len(text)-1, -1, -1):
    product+=text[x]
return product