Python内置的一种数据类型是列表:list , list是一种有序的集合,可以随时添加和删除其中的元素。
知识点1:Python是动态语言,所以list中包含的元素并不要求都必须是同一种数据类型,可以在list中包含各种数据
L = ['Michael', 100, True]
知识点2:Python list索引访问:正序索引从0开始,倒序从-1开始,如
L = [95.5, 85, 59]
print L[0] #95.5
print L[-2] #85
知识点3:python list追加元素,追加到后面:append() ,插入到前面:insert(),insert两个参数,第一个参数添加到第几个索引,后面的索引会自动往后排,如:
L = ['Adam', 'Lisa', 'Bart']
L.append('Paul')
print L #['Adam', 'Lisa', 'Bart','Paul']
L.insert(0, 'Ali')
print L #['Ali','Adam', 'Lisa', 'Bart','Paul']
知识点4:python list删除元素pop(),pop()方法总是删掉list的最后一个元素,并且它还返回这个元素
#要求同时删除Lisa,Paul
L = ['Adam', 'Lisa', 'Paul', 'Bart']
L.pop(2) #删除索引为2后数组会重排
L.pop(2)
print L
知识点5:python list 替换元素,直接用索引赋值方式即可替换对应值
L = ['Adam', 'Lisa', 'Bart']
L[0] = 'Bart';
L[1] = 'Lisa';
L[2] = 'Adam';
print L
知识点6:python 元组tuple,tuple一旦创建完毕,就不能修改;tuple和创建list唯一不同之处是用( )
替代了[];不能新增,不能替换,不能删除,只能访问,如
t = (0,1,2,3,4,5,6,7,8,9)
print t
tuple关键点1:单元素(1)既可以表示tuple,又可以作为括号表示运算时的优先级,结果 (1) 被Python解释器计算出结果 1,导致我们得到的不是tuple,而是整数 1。正是因为用()定义单元素的tuple有歧义,所以 Python 规定,单元素 tuple 要多加一个逗号“,”,这样就避免了歧义,如:
t = ('Adam',)
print t
t = (1, 2, 3,)
print t
(1, 2, 3)
#Python在打印单元素tuple时,也自动添加了一个“,”,多元素 tuple 加不加这个额外的“,”效果是一样的
tuple关键点2:tuple一开始指向的list并没有改成别的list,所以,tuple所谓的“不变”是说,tuple的每个元素,指向永远不变。即指向'a',就不能改成指向'b',指向一个list,就不能改成指向其他对象,但指向的这个list本身是可变的!如:
t = ('a', 'b', ['A', 'B'])
L = t[2]
L[0] = 'x'
L[1] = 'y'
print t #返回('a', 'b', ['X', 'Y'])
#子元素list是可以变的,如果要不能改变,则改成
t = ('a', 'b', ('A', 'B'))