前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python列表、元组(三)

python列表、元组(三)

作者头像
py3study
发布2020-01-13 20:31:00
4950
发布2020-01-13 20:31:00
举报
文章被收录于专栏:python3

一、列表

1. 创建列表

代码语言:javascript
复制
>>> name = ['gao', 'sam', 'snow', 'jey']
>>> type(name)
<type 'list'>
>>> name=list(['gao', 'sam', 'snow', 'jey'])   # python 3.0+ 会报错
>>> type(name)
<type 'list'>
>>> name = []
>>> type(name)
<type 'list'>
>>> name = list()   # python 3.0+ 会报错
>>> type(name)
<type 'list'>

2.  切片  与字符串类似

代码语言:javascript
复制
>>> name = ['Sam', 'Jey', 'Snow', 'Amy']
>>> name[2]
'Snow'
>>> name[1:]
['Jey', 'Snow', 'Amy']
>>> name[-2:]
['Snow', 'Amy']
>>> name[-1:-3:-1]
['Amy', 'Snow']

3. 追加

代码语言:javascript
复制
>>> name = ['Sam', 'Jey', 'Snow']
>>> name.append('Yang')
>>> name
['Sam', 'Jey', 'Snow', 'Yang']

4. 插入

代码语言:javascript
复制
>>> name
['Sam', 'Jey', 'Snow', 'Yang']
>>> name.insert(1, 'Long')
>>> name
['Sam', 'Long', 'Jey', 'Snow', 'Yang']

5.  修改

代码语言:javascript
复制
>>> name
['Sam', 'Long', 'Jey', 'Snow', 'Yang']
>>> name[2]='Goo'
>>> name
['Sam', 'Long', 'Goo', 'Snow', 'Yang']

6. 删除

方法一

代码语言:javascript
复制
>>> name
['Sam', 'Long', 'Goo', 'Snow', 'Yang']
>>> del name[0]
>>> name
['Long', 'Goo', 'Snow', 'Yang']

方法二

代码语言:javascript
复制
>>> name
['Long', 'Goo', 'Snow', 'Yang']
>>> name.remove('Goo')
>>> name
['Long', 'Snow', 'Yang']

方法三

代码语言:javascript
复制
>>> name = ['Sam', 'Jey', 'Snow', 'Yang']
>>> name.pop()
'Yang'
>>> name
['Sam', 'Jey', 'Snow']
>>> name.pop(1)
'Jey'
>>> name
['Sam', 'Snow']

7. 扩展

代码语言:javascript
复制
>>> name = ['Sam', 'Jey', 'Snow', 'Yang']
>>> girls=['Goo', 'Di']
>>> name.extend(girls)
>>> name
['Sam', 'Jey', 'Snow', 'Yang', 'Goo', 'Di']

8. 拷贝

浅拷贝一

代码语言:javascript
复制
>>> name = ['Sam', 'Jey',['age', 'salary']]
>>> name2 = name.copy()
>>> name2
['Sam', 'Jey', ['age', 'salary']]
>>> name[0]='Sam2'
>>> name[2][0]='age2'
>>> name
['Sam2', 'Jey', ['age2', 'salary']]
>>> name2
['Sam', 'Jey', ['age2', 'salary']]

浅拷贝二

代码语言:javascript
复制
>>> name = ['Sam', 'Jey',['age', 'salary']]
>>> name2=name[:]
>>> name2
['Sam', 'Jey', ['age', 'salary']]
>>> name[0]='Sam2'
>>> name[2][0]='age2'
>>> name
['Sam2', 'Jey', ['age2', 'salary']]
>>> name2
['Sam', 'Jey', ['age2', 'salary']]

浅拷贝三   (只适应python2.0+)

代码语言:javascript
复制
>>> name = ['Sam', 'Jey', ['age', 'year']]
>>> name2 = list(name)
>>> name2
['Sam', 'Jey', ['age', 'year']]

深拷贝

代码语言:javascript
复制
>>> import copy
>>> name = ['Sam', 'Jey',['age', 'salary']]
>>> name2=copy.deepcopy(name)
>>> name[0]='Sam2'
>>> name[2][0]='age2'
>>> name
['Sam2', 'Jey', ['age2', 'salary']]
>>> name2
['Sam', 'Jey', ['age', 'salary']]

9. 统计

代码语言:javascript
复制
>>> name = ['Sam', 'Jey', 'Sam',1, 9]
>>> name.count('Sam')
2

10. 排序翻转

代码语言:javascript
复制
>>> name = ['Sam', 'Jey', 'Sam',1, 9]
>>> name.sort()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: '<' not supported between instances of 'int' and 'str'
>>> name = ['Sam', 'Jey', 'Sam']
>>> name.sort()
>>> name
['Jey', 'Sam', 'Sam']
>>> name = ['Sam', 'Jey', 'Sam','1', '9']
>>> name.sort()
>>> name
['1', '9', 'Jey', 'Sam', 'Sam']
>>> name.reverse()
>>> name
['Sam', 'Sam', 'Jey', '9', '1']

10. 获取下标

代码语言:javascript
复制
>>> name = ['Sam', 'Jey', 'Sam','1', '9']
>>> name.index('Jey')
1
>>> name.index('aa')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: 'aa' is not in list

11. 清除

代码语言:javascript
复制
>>> name = ['Sam', 'Jey', 'Sam','1', '9']
>>> name.clear()
>>> name
[]

二.  元组

元组就是不可变的列表,只能读取,不能修改

1. 元组定义

代码语言:javascript
复制
>>> name=('Sam', 'Gao', 'jey')
>>> name
('Sam', 'Gao', 'jey')
>>> team=('ops',)
>>> team
('ops',)
>>> type(team)
<class 'tuple'>

2. 切片  与列表类似

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/07/15 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档