首页 > 解决方案 > 在for循环中反转字符串

问题描述

我有以下功能:

s = 'hello'
rev = ''

for char in s:
    rev = char + rev
return rev

为什么上面的 for 循环反添加字符?我尝试使用rev += char,它以原始顺序返回字符串,s. 视频中提到了这一点,他们没有正确解释,只是说“Python 的 for 循环字符串不能那样工作”。我想知道它为什么会这样,所以以后我会更倾向于避免这些错误。

另一个问题是,我可以在列表的 for 循环中实现这种类型的行,它会输出列表的倒数吗?因为列表是可变的。

标签: pythonpython-3.x

解决方案


字符串上的 -+运算符表示不可交换的连接。所以 和 之间是有区别char + revrev + char

在前面连续添加下一个字符可以有效地反转字符串。


推荐阅读