xlwings的python,我不理解规则之一

时间:2016-08-30 11:33:56

标签: python excel xlwings

我能清楚地理解rng[0, 0]rng[1],但为什么呢?为什么rng[:, 3:]切片为$D$1:$D$5?为什么rng[1:3, 1:3]$B$2:$C$3,我无法理解切片的规则。

Range indexing/slicing
Range objects support indexing and slicing, a few examples:

rng = xw.Book().sheets[0].range('A1:D5')

1 个答案:

答案 0 :(得分:0)

我会试一试。因为在方括号中,索引从0 *开始。因此,对于基于1的索引系统,将[1:3,1:3]视为(2:4,2:4)。还要记住:之后的值不包括在内,所以包含(2:4,2:4)是(2:3,2:3)。第二个Excel列是B,第三个是C,第二个Excel行是2,第三个是3.因此范围是B2:C3。

IMO是一个可怕的例子选择!

给定范围A1:D5,用rng [:,3:]切片表示所有行,第四列到结束列,因此D1:D5。

从相同范围(A1:D5)中仅取出列元素[1:3]。切片开始(包括)第二个索引元素(0 first,1 second),即B,并继续紧接在第四个索引元素(A,B,C,D)之前。因此B:C。

SO39226421 example

*对于为什么0开始,有详细信息here