(参照廖雪峰的python教程)
list是一种有序的集合,可以随时添加和删除其中的元素。
classmates = ['jane', 'kevin', 'holiday'] 变量classmates定义了一个list,用len()函数可以得到list中元素的个数。访问list中的元素有顺序和倒序两种方法,classmates[0]代表list中的第一个元素,classmates[-1]代表list中的最后一个元素。顺序访问时classmates[0], classmates[1] ... 倒序访问时classmates[-1], classmates[-2]...无论哪种方式都不能越界。
list对象的操作方法有:
1. 追加元素到list末尾:classmates.append('antony')
2. 把元素插到指定位置:classmates.insert(1,'antony') 在list中的list[1]位置用‘antony’替代
3. 删除list末尾的元素 : classmates.pop()
4. 删除list中指定位置的元素: classmates.pop(i) 删除list中的第i个元素
5. 把元素替换成另外一个元素: 直接赋值classmates[1] = ‘Benny’
6. list中的元素类型可以不同,元素也可以是另外一个list。classmates = ['jane','kevin','holiday',['jade','teddy']] 用len(classmates) 得到的值为4,访问jade元素可以使用classmates[3][0]。另外访问classmates[1][1]返回的是‘kevin’中的第二个字母‘e’
7.定义一个空list时用 L = [] 空list的长度为零
元组(tuple): 和list一样也是一种有序列表,但是和list不同的是,元组一旦初始化就不能改变。元组中元素的访问方式和list一样。
元组的定义: classmates = ('jane', 'holiday', 'kevin') 注意定义只有一个元素的tuple时用T = (1,) 因为如果用(1),python会把它当 为数学运算中的小括号,那么定义的将会是一个数。
不可变的元组和list相比有什么区别,因为tuple不可变,所以代码更安全,如果可能能用tuple就不要用list。
可变元组:
classmates = ('jane', 'kevin', ['holiday', 'benny'])
classmates[2][1] = 'jade' classmates这个元组中的第三个元素是一个list,这个list中的元素是可以改变的。这也说明python是把这个list当作一个元素的,只要其不指向其他的list就没问题,至于list中的元素是否改变则不受影响。类似的也可以定义一个包含元组的list,classmates = ['jane', 'kevin', ('holiday', 'jade')] 这时classmates[2]是一个元组,其中的元素是不能改变的。