Ptthon学习记录(八)-------list和元组
list和元组
list
list是列表,为一个有序的集合,可以随时删除或添加其中的元素,如下:classmates为一个list,可以用len显示list的长度:
1 >>> classmates=['Freezing','Gree','Alex'] 2 >>> classmates 3 ['Freezing', 'Gree', 'Alex'] 4 >>> len(classmates) 5 3
用索引访问list中每一个位置的元素,下标从[0]开始,最后一个元素为len()-1,若写为len(),会报下标越界的错误:
>>> classmates[0] 'Freezing' >>> classmates[1] 'Gree' >>> classmates[2] 'Alex' >>> classmates[3] Traceback (most recent call last): File "<stdin>", line 1, in <module> IndexError: list index out of range
可以用[-1]下标来表示list中的最后一个元素:
>>> classmates[-1] 'Alex'
>>> classmates[-1] 'Alex' >>> classmates[-2] 'Gree' >>> classmates[-3] 'Freezing' >>> classmates[-4] Traceback (most recent call last): File "<stdin>", line 1, in <module> IndexError: list index out of range
>>> classmates[len(classmates)-1] 'Alex' >>> classmates[-len(classmates)] 'Freezing'
list中追加元素用append()方法:
>>> classmates.append('Test') >>> classmates ['Freezing', 'Gree', 'Alex', 'Test']
insert()方法可以在list的指定位置插入元素,例如在第3个元素之前插入元素num3:
>>> classmates.insert(3,'num3') >>> classmates ['Freezing', 'num2', 'Gree', 'num3', 'Alex', 'Test']
要删除list末尾的元素,用pop()
方法:
>>> classmates.pop() 'Test' >>> classmates ['Freezing', 'num2', 'Gree', 'num3', 'Alex']
删除list中指定位置的元素,采用pop(i),其中i表示元素位置:
>>> classmates.pop(0) 'Freezing' >>> classmates ['num2', 'Gree', 'num3', 'Alex']
要把某个元素替换成别的元素,可以直接赋值给对应的索引位置:
>>> classmates[1]= 'freezing' >>> classmates ['num2', 'freezing', 'num3', 'Alex']
list中的元素种类也可以不同:
>>> list=['freezing',123,3.5] >>> list ['freezing', 123, 3.5]
list中的元素可以是另一个list:
>>> list=['num1','num2',['num3','num4'],'num5'] >>> list ['num1', 'num2', ['num3', 'num4'], 'num5'] >>> len(list) 4
>>> list[2][1] 'num4'
list可以为一个空的列表,长度为0:
>>> list=[] >>> len(list) 0
元组
元组也是一个列表,但是与list不同的是元组一旦定义,其元素内容不可变动,因此也没有append()、insert()等方法提供使用。
>>> classmates=('num1','num2','num3') >>> classmates ('num1', 'num2', 'num3')
其获取元素的方法与list是一样的:
>>> classmates=('num1','num2','num3') >>> classmates ('num1', 'num2', 'num3') >>> classmates[0] 'num1' >>> classmates[-1] 'num3'
tuple的元素不可变动,在定义tuple时,其元素就已经被确定:
>>> classmates=('num1','num2','num3')
若要定义一个空的tuple,则按照如下方式编写:
>>> tuple=() >>> len(tuple) 0
tuple中的元素可以为一个list,其中list中的元素可以修改:
>>> tuple=(1,2,[3,4]) >>> tuple[2][0]=30 >>> tuple[2][1]=40 >>> tuple (1, 2, [30, 40])
练习题
#练习 #请用索引取出下面list的指定元素: # -*- coding: utf-8 -*- L = [ ['Apple', 'Google', 'Microsoft'], ['Java', 'Python', 'Ruby', 'PHP'], ['Adam', 'Bart', 'Lisa'] ] # 打印Apple: print(L[0][0]) # 打印Python: print(L[1][1]) # 打印Lisa: print(L[2][2])