没有合适的资源?快使用搜索试试~ 我知道了~
python入门三之高级类型1
资源详情
资源评论
资源推荐
Python入门二高级数据类型
List,tupel,dict,set
1. 有序集合:list,tuple,str和unicode;
2. 无序集合:set
3. 无序集合并且具有 key-value 对:dict
1、List
list申明:
L = ['Adam', 'Lisa', 'Bart']
list索引:
需要特别注意的是,索引从 0
开始,也就是说,第一个元素的索引是0,第二个元素的索引是1,以此类推。
因此,要打印第一名同学的名字,用 L[0]:
>>> print L[0]
Adam
要打印第四名同学的名字,用 L[3]:
>>> print L[3]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: list index out of range
报错了!IndexError意思就是索引超出了范围,因为上面的list只有3个元素,有效的索引是
0,1,2。
所以,使用索引时,千万注意不要越界。
倒序访问list:
Bart同学是最后一名,俗称倒数第一,所以,我们可以用 -1 这个索引来表示最后一个元素:
>>> print L[-1]
Bart
Bart同学表示躺枪。
类似的,倒数第二用 -2 表示,倒数第三用 -3 表示,倒数第四用 -4 表示:
>>> print L[-2]
Lisa
>>> print L[-3]
Adam
>>> print L[-4]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: list index out of range
L[-4] 报错了,因为倒数第四不存在,一共只有3个元素。
使用倒序索引时,也要注意不要越界。
对List切片
>>> L = ['Adam', 'Lisa', 'Bart', 'Paul']
取前三个:
>>> L[0:3]
['Adam', 'Lisa', 'Bart']
也可以从索引1开始,取出2个元素出来:
>>> L[1:3]
['Lisa', 'Bart']
只用一个 : ,表示从头到尾:
>>> L[:]
['Adam', 'Lisa', 'Bart', 'Paul']
切片操作还可以指定第三个参数:
>>> L[::2]
['Adam', 'Bart']
第三个参数表示每N个取一个,上面的 L[::2]
会每两个元素取出一个来,也就是隔一个取一个。
把list换成tuple,切片操作完全相同,只是切片的结果也变成了tuple。
倒序切片
>>> L = ['Adam', 'Lisa', 'Bart', 'Paul']
>>> L[-2:]
['Bart', 'Paul']
>>> L[:-2]
['Adam', 'Lisa']
>>> L[-3:-1]
['Lisa', 'Bart']
>>> L[-4:-1:2]
['Adam', 'Bart']
添加新元素:
用 list 的append()方法,向list中添加新元素
>>> L.append('Paul')
>>> print L
['Adam', 'Lisa', 'Bart', 'Paul']
append()总是把新的元素添加到 list 的尾部。
用list的insert()方法,它接受两个参数,第一个参数是索引号,第二个参数是待添加的新
元素:
>>> L.insert(0, 'Paul')
>>> print L
['Paul', 'Adam', 'Lisa', 'Bart']
L.insert(0, 'Paul')的意思是,'Paul'将被添加到索引为 0
的位置上(也就是第一个),而原来索引为 0
的Adam同学,以及后面的所有同学,都自动向后移动一位。
删除元素:
list的pop()方法删除
>>> L = ['Adam', 'Lisa', 'Bart', 'Paul']
>>> L.pop()
'Paul'
>>> print L
['Adam', 'Lisa', 'Bart']
pop()方法总是删掉list的最后一个元素,并且它还返回这个元素,所以我们执行 L.pop()
后,会打印出 'Paul'。
如果Paul同学不是排在最后一个怎么办?比如Paul同学排在第三:
>>> L = ['Adam', 'Lisa', 'Paul', 'Bart']
要把Paul踢出list,我们就必须先定位Paul的位置。由于Paul的索引是2,因此,用pop(2)把
Paul删掉:
>>> L.pop(2)
'Paul'
>>> print L
['Adam', 'Lisa', 'Bart']
剩余11页未读,继续阅读
宏馨
- 粉丝: 20
- 资源: 293
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0