python中的列表、元组、数组——是不是特别容易混淆啊??
列表:
1. 即list, 是python内置的数据类型。 它的形式是: a = [1, 2, 3, 4, 5]
2. 列表内的值是可以改变的; 即可以这样子: a[0] = 100, 把列表的第0元素 改变为100
3. 使用列表赋值时,得到了原始列表的引用, 所以呢,它们共享内存,如果修改其中一个,另一个也会修改了;例如:
>>> a = range(5) >>> b = a >>> b [0, 1, 2, 3, 4] >>> b[0] = 999 >>> a [999, 1, 2, 3, 4]
元组:
1. 即tuple,也是python内置的类型, 它的产生形式是: b = 1, 2, 3, 4, 5 (这是它本来的样本) 但是呢,有时候会加上括号,变为:b = (1, 2, 3, 4, 5)
2. 元组内的值是不可以改变的; b[0] = 100 , 这样是错误的;
数组:
数组是 numpy模块里的ndarray对象, 它可以表示多維数组。
1.产生方法多种,如:
>>> import numpy as np #使用arange()函数: >>> a = np.arange(5) >>> a array([0, 1, 2, 3, 4]) # 使用array函数: >>> a = np.array([1, 2, 3, 4]) >>> a array([1, 2, 3, 4])
2. 对数组进行切片时, 得到的新数组与原数组共享内存单元。