首页 > 解决方案 > 尝试通过添加字符来反转字符串

问题描述

我正在研究一个反转字符串的函数,当我运行它时,我得到两个错误,一个是在tot -= i显示TypeError: unsupported operand type(s) for -=: 'str' and 'str',一个是在print(reverse(thestr))

但是,如果我把+in tot += i,它的工作原理。我该如何解决这个问题,至于我在使用时的理解-会相反?

def reverse(c):
    tot = ''
    for i in c:
        tot -= i
    return tot
thestr = 'This is a Test'
print(reverse(thestr))

标签: pythonpython-3.x

解决方案


据我了解使用 - 它会反过来

这是不正确的。

要预先添加,您可以执行以下操作:

tot = i + tot

或者,要更 Python 地解决问题,请使用reversed()

def reverse(c):
    tot = ''
    for i in reversed(c):
        tot += i
    return tot

然后可以简化为''.join()

def reverse(c):
    return ''.join(reversed(c))

或者简单地使用反向切片:

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

推荐阅读