请帮助我理解这个特殊切片如何颠倒系列的顺序。我经常无法使用[]来理解切片。有没有一个页面可以解释它。我想我理解切片如何在pandas数据帧上使用iloc和loc。这是一个有效的例子
a=pd.Series(range(0,10))
a[::-1]
答案 0 :(得分:2)
这就是它定义的内容!
语法ls[x:y:z]
表示"制作ls
的副本,从索引x
到索引z
,每个z
个元素& #34;
当z为正时,这很明显:
[1,2,3,4,5][::2] -> [1,3,5]
(请注意x
和y
的默认设置为0
和len(ls)
)
但负面的z被定义为完全相同:
[1,2,3,4,5][::-2] -> [5,3,1]
答案 1 :(得分:1)
切片就像range()
一样,切片的最后一个参数是step
值,因此如果指定了它,它会告诉它按特定数字步进。如果未指定其他参数,则返回其默认值
一个例子就是这样:
>>> [1, 2][::]
[1, 2]
表示整个列表,所以最后一个参数只是告诉python从列表的末尾开始,步骤为负1(索引位置不是数字)
如果它们被指定,则从切片的末尾开始,然后从那里向后退步
答案 2 :(得分:1)
切片的表示法以索引开头,以索引结束。
:
首先查看第二个:
的左侧,第一个-1
所说的是什么。 1,2,3,4,5,6
然后说回去,所以如果你想象你有一行数字:
,那么1是你开始的地方,你一直走到最后6点那时我们刚刚覆盖了第一个-1
现在下一部分是6,5,4,3,2,1
,它表示通过倒退来制作新列表,以便生成+----+--------------------------+
| id | customer |
+----+--------------------------+
| 1 | Dent, Arthur |
| 2 | Prefect, Ford |
| 3 | Beeblebrox, Zaphod |
+----+--------------------------+
。希望这很清楚。