刚开始学 python,以前用过 C 和 Matlab。学到 string 和 list 的索引数字时比较困惑。
python 里是以元素的左边缘作为索引数字的位置,而 C 和 Matlab 直接以元素的位置作为索引数字。如下:
x = ' P Y T H O N'
Python:0 1 2 3 4 5 6
C: 0 1 2 3 4 5
这样,python 里 x[0:3]是‘ PYT',而 C 里 x[0:3]是'PYTH'。
我比较疑惑 PYTHON 为什么这样定义,有什么好处或优势?因为我自己觉得 C 的定义更直观一些。
另外,还有 range 函数,好像定义原理和索引数字一样。
range(0, 4 )是 0,1,2,3,不包括 4,是指只能有 4 个数字?
range(0, 10, 2)则是 0, 2, 4, 6, 8, 也不包括 10。
同样的问题,为什么第二个参数不是实际边界,这样做的好处是什么?
敬请大家帮我解惑,谢谢!
python 里是以元素的左边缘作为索引数字的位置,而 C 和 Matlab 直接以元素的位置作为索引数字。如下:
x = ' P Y T H O N'
Python:0 1 2 3 4 5 6
C: 0 1 2 3 4 5
这样,python 里 x[0:3]是‘ PYT',而 C 里 x[0:3]是'PYTH'。
我比较疑惑 PYTHON 为什么这样定义,有什么好处或优势?因为我自己觉得 C 的定义更直观一些。
另外,还有 range 函数,好像定义原理和索引数字一样。
range(0, 4 )是 0,1,2,3,不包括 4,是指只能有 4 个数字?
range(0, 10, 2)则是 0, 2, 4, 6, 8, 也不包括 10。
同样的问题,为什么第二个参数不是实际边界,这样做的好处是什么?
敬请大家帮我解惑,谢谢!



)