小编sna*_*ubo的帖子

理解python语言参考中描述的python切片语法

以下是我从The Python Language Reference中复制的切片语法:

slicing      ::=  primary "[" slice_list "]"
slice_list   ::=  slice_item ("," slice_item)* [","]
slice_item   ::=  expression | proper_slice
proper_slice ::=  [lower_bound] ":" [upper_bound] [ ":" [stride] ]
lower_bound  ::=  expression
upper_bound  ::=  expression
stride       ::=  expression
Run Code Online (Sandbox Code Playgroud)

根据我的理解,这种语法相当于SomeMappingObj[slice_item,slice_item etc...]再次等同于a[0:2:1,4:7:1]a =[i for i in range(20)].

但是,我无法在IPython中测试这个,我没有发现任何关于多个切片的问题.我对python中多次切片的解释是否正确?我做错了什么?

In [442]: a=[i for i in range(20)]

In [443]: a[0:12:2]
Out[443]: [0, 2, 4, 6, 8, 10]

In [444]: a[0:12:2,14:17:1]
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent …
Run Code Online (Sandbox Code Playgroud)

python slice python-3.x

5
推荐指数
1
解决办法
69
查看次数

标签 统计

python ×1

python-3.x ×1

slice ×1