Python中[:]与[::]的用法

您所在的位置:网站首页 发模的用法 Python中[:]与[::]的用法

Python中[:]与[::]的用法

2024-03-14 02:08| 来源: 网络整理| 查看: 265

Python中[:]与[::]的用法 概述

[:]与[::]语法是通用序列操作(Common Sequence Operations)其中的两个。用[:]或[::]对多数序列类型(可变的或不可变的)(如字符串、列表等)序列中元素进行截取。

[:]的用法 s[i:j]

从下标i到下标j,截取序列s中的元素。

如果i或j为负数,则下标从序列尾部算起,也就是说,下标i相当于下标len(s)+i,下标j相当于下标len(s)+j。另外,-0依然是0。从序列s的下标i的元素(包含)到下标j的元素(不包含)之间所有元素,进行截取。另外,i < j。 若i或j大于len(s),则i或j被len(s)取代。若i省略或i是None值,则i被0取代。若j省略或j是None值,则j被len(s)取代。若i>=j,返回没元素的序列。 >>> a=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> a[-1:] [9] >>> a[-9:-1] [1, 2, 3, 4, 5, 6, 7, 8] >>> a[1:20] [1, 2, 3, 4, 5, 6, 7, 8, 9] >>> a[:9] [0, 1, 2, 3, 4, 5, 6, 7, 8] >>> a[0:] [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> a[9:3] [] >>> [::]的用法 s[i:j:k]

从下标i到下标j,步数为k,截取序列s中的元素。

如果i或j为负数,则下标从序列尾部算起,也就是说,下标i相当于下标len(s)+i,下标j相当于下标len(s)+j。另外,-0依然是0。从序列s的下标i的元素(包含)到下标j的元素(不包含)之间,选取下标为i+n*k的元素(0 >> a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> a[1:10:2] [1, 3, 5, 7, 9] >>> a[1:10:3] [1, 4, 7] >>> a[1:10:-2] [] >>> a[1:10:-3] [] >>> a[10:1:-2] [9, 7, 5, 3] >>> a[10:1:-3] [9, 6, 3] >>> a[::2] [0, 2, 4, 6, 8] >>> a[::-2] [9, 7, 5, 3, 1] >>> a[::-1] [9, 8, 7, 6, 5, 4, 3, 2, 1, 0] >>> a[-9:-1:2] [1, 3, 5, 7] >>> a[-9:-1:-2] [] >>> a[-1:-9:-2] [9, 7, 5, 3] >>> a[-1::-2] [9, 7, 5, 3, 1] >>> a[:-1:2] [0, 2, 4, 6, 8] >>> 参考资料 Common Sequence Operationspython 中的[:-1]和[::-1]What is :: (double colon) in Python when subscripting sequences?


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3