【问题标题】:Some confusion about Slice[::] [duplicate]关于 Slice[::] 的一些困惑 [重复]
【发布时间】:2017-11-08 12:44:35
【问题描述】:
alphabet='abide'
>>>alphabet[-1::-1]
'ediba'
>>>alphabet[::-1]
'ediba'

为什么这两个打印出相同的东西? 第二个不应该是'aedib'吗?

【问题讨论】:

  • 为什么应该是'aedib'?你为什么不相信翻译? ;) 基本上,两种切片对于解释器来说都是等价的。
  • 两个切片都等价于alphabet[None:None:-1]alphabet[-1:-6:-1]
  • 一个更好的骗子也许stackoverflow.com/questions/44385999/…

标签: python


【解决方案1】:
alphabet[::-1]

将反转您的字符串。为什么?第一个冒号之前没有值,因此它统计在列表的开始索引处。然后,仍然没有价值,所以你一直走到列表的末尾。第三,你有-1,所以你增加了-1,换句话说,你正在倒退。

它等同于alphabet[-1::-1],因为您只是要求从最后一个字符开始,它已经这样做了。

【讨论】:

    猜你喜欢
    • 2019-11-07
    • 1970-01-01
    • 1970-01-01
    • 2020-12-25
    • 2014-11-02
    • 2016-09-15
    • 1970-01-01
    • 1970-01-01
    • 2019-12-11
    相关资源
    最近更新 更多