为什么这不能正常运行?我知道高级切片 ([::-1]) 选项,但我想弄清楚如何以这种方式反转 str 。
word = input("Please enter a word to reverse: ")
cut = len(word)
print(word[cut:-cut])
word[cut:-cut]
可以从cut
to -cut
,你也可以这样写
word[cut:0]
但步长仍为 1,仍为正。所以它会从尽头向前切,因为到了尽头就停下来!
这意味着无论哪种方式都需要该步骤,word[cut:-cut:-1]
。向后索引时,两个索引都需要减一,所以你有word[cut-1:-cut-1:-1]
, 或word[cut-1:-6:-1]
, 甚至只有word[::-1]
. 请注意,-1
由于 end 参数将被改写回字符串的末尾!
除非您指定负步长,否则切片始终向前。在切片结束后指定起始位置只会产生一个空切片。你需要消极的一步。