为什么我不能通过从 0 到长度 -1 来反转字符串?

Why can't I reverse strings by striding from 0 to their length by -1?

在 Python 中,我知道我可以反转字符串

'dfdfsdf'[::-1]

这实际上使它倒退了。但是,当我尝试 运行 时,它不起作用

string = 'dfdfsdf'
reversed = string[0:len(string):-1]
print(reversed)

我只是想知道这样做行不通;格式是 [first:last:step],所以我想我可以。

它不起作用,因为列表中的迭代是这样工作的:

list[start_point:end_point:iteration]

所以对于你的方法你需要写:

reversed = string[len(string)-1:-len(string)-1:-1]

在 dupe 中有更多解释 link

或者您可以使用如下函数实现保留 list/string:

reversed = "".join(reversed(string))