Python
List和 Tuple 类型
List
- 创建 List
>>>footballStar=['Messi','Henry','Iniesta']
>>>print(footballStar)
- 按照索引访问 List
##正序打印
>>>print(footballStar[0]) #Messi
>>>print(footballStar[1]) #Henry
>>>print(footballStar[2]) #Iniesta
##逆序打印
>>>print(footballStar[-3] #Messi
>>>print(footballStar[-2] #Henry
>>>print(footballStar[-1] #Iniesta
- 添加新元素
##第一种方法:使用 list 的 append()方法
>>>footballStar.append('Paul')
>>>print(footballStar) #['Messi', 'Henry', 'Iniesta', 'Paul']
##第二种方法:使用 insert()方法
>>>footballStar.insert(0,'Paul')
>>>print(footballStar)#['Paul', 'Messi', 'Henry', 'Iniesta', 'Paul']
- 删除元素
##使用pop()方法
>>>footballStar.pop(2)/删除索引为2的元素
>>>print(footballStar)#['Paul', 'Messi', 'Iniesta', 'Paul']
- 替换元素
##直接进行赋值
>>> footballStar[2]='Zendance'
>>> print(footballStar)#['Paul', 'Messi', 'Zendance', 'Paul']
Tuple
- 创建Tuple
##和List 唯一的不同在于用()代替了[]
>>>footballClub=('Barcelona','Bayern','Real Madrid')
>>>print(footballClub) #('Barcelona', 'Bayern', 'Real Madrid')
- 按照索引访问 Tuple
##正序访问
>>> footballClub[0]#'Barcelona'
>>> footballClub[1]#'Bayern'
>>> footballClub[2]#'Real Madrid'
##逆序访问
>>> footballClub[-3]#'Barcelona'
>>> footballClub[-2]#'Bayern'
>>> footballClub[-1]#'Real Madrid'
##Tuple 创建就不能修改了,不可以进行赋值
>>>footballClub[2]='Pairs'
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment
- 创建单元素 Tuple
##创建空 Tuple
>>> T=()
>>> print (T)#()
##创建一个元素的 Tuple
>>> T=(1)
>>> print (T) #1,结果为1,而不是(1) ,为了区别,单元素 Tuple 需要加一个","
>>> T=(1,)
>>> print (T)#(1,)
- “可变 Tuple”
>>> T=('a','b',['A','B'])
>>> print(T) #('a', 'b', ['A', 'B'])
>>> L=T[2]
>>> print(L) #['A', 'B']
>>> L[0]='C'
>>> L[1]='D'
>>> print(T)#('a', 'b', ['C', 'D']),T改变了,是因为 Tuple 中的 List 改变了
Note:tuple所谓的“不变”是说,tuple的每个元素,指向永远不变。即指向’a’,就不能改成指向’b’,指向一个list,就不能改成指向其他对象,但指向的这个list本身是可变的!