而反向字符串循环

While Reverse String Loop

def reverse(x):
    word = ""
    b = len(x)
    while b >= 0:

        word = word + x[b:]
        b = b - 1
    print word

试图实现反向功能,当输入 "why" 输出

yhywhy

为什么?

改变这个:

b = len(x)

为此:

b = len(x)-1

还有这个:

x[b:]

为此:

x[b]

更 "pythonic" 的实现方式:

def reverse(x):
    print ''.join([x[i] for i in range(len(x)-1,-1,-1)])

您的切片正在从索引读取到字符串末尾

尝试

def reverse(x):
    word = ""
    b = len(x)-1
    while b >= 0:
        word += x[b]
        b -= 1
    print word