On 17/12/2016 19:10, John wrote:
Hi,

   I am new to Python, and I believe it's an easy question. I know R and Matlab.

************
x=[1,2,3,4,5,6,7]
x[0]
1
x[1:5]
[2, 3, 4, 5]
*************

    My question is: what does x[1:5] mean?

x[A:B] means the slice consisting of x[A], x[A+1],... x[B-1]. (Although slices can shorter including those with be 0 or 1 elements.)

By Python's convention, the first element of a list is indexed as "0".

Or the slice from the (A+1)th element to the B'th element inclusive, if you are informally using ordinal indexing (first, second, third etc).

Doesn't x[1:5] mean a sub-list of x, indexed 1,2,3,4,5?

Sublists and slices, once extracted, are indexed from 0 too.

Play around with some test code, but avoid test data containing numbers that are not too different from possible indices as that will be confusing!

Strings might be better:

  x = "ABCDEFGHIJKLM"

  print (x[1:5])

displays: BCDE

  print (x[1:5][0:2])        # slice of a slice

displays: BC

--
Bartc
--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to