首页 > 解决方案 > Python字符串切片结果在不同切片索引处不可预测或相同

问题描述

我有一个字符串“Queen”,我有以下代码片段:


    string = "Queen"
    print(string[::-1])

令人惊讶的是,它给出了结果“neeuQ”。但是当我这样做时,print(string[-1::0]) 它说


    ValueError                                Traceback (most recent call last)
    <ipython-input-26-3b86270ea57d> in <module>
          1 string = "Queen"
    ----> 2 print(string[-1::0])
    
    ValueError: slice step cannot be zero

同样,当我写print(string[-1::9])或任何其他数字> 0 时,它显示相同的结果“n”。

我知道这是关于 Python 的字符串切片属性,但我没有得到每个命令内部发生的操作。通常情况下string[0::4]它绝对没问题,但在这些情况下发生了什么?为什么我们有这样的输出?

标签: pythonstringslice

解决方案


推荐阅读