视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
Python中列表、字典、元组、集合数据结构整理
2020-11-27 14:31:24 责编:小采
文档


本文详细归纳整理了Python中列表、字典、元组、集合数据结构。分享给大家供大家参考。具体分析如下:

列表: 代码如下:

shoplist = ['apple', 'mango', 'carrot', 'banana']


字典: 代码如下:

di = {'a':123,'b':'something'}


集合: 代码如下:

jihe = {'apple','pear','apple'}


元组: 代码如下:

t = 123,456,'hello'

1.列表

空列表:a=[]

函数方法:
代码如下:

a.append(3)   >>>[3]
a.extend([3,4,5])   >>>[3,3,4,5] #添加一个列表序列
a.insert(1,'hello')    >>>[3,'hello',3,4,5]
a.remove(3)     >>>['hello',3,4,5] #删除第一个出现的3,没有3则报错
a.pop()       >>>['hello',3,4]
a.pop(0)       >>>[3,4]
a.index(4)    >>>1 #返回出现的第一个4的下标
a.count(3)   >>>1 #列表中元素3的个数
a.sort >>>[3,4] #排序
a.reverse() >>>[4,3] #反序

删除元素的方法:
代码如下:

a.remove(3) #通过值删除元素,删除第一个为参数值得元素
a.pop() #通过下标删除元素,默认删除列表最后一个值,带参数则删除下标为参数值的元素
del a[0] #通过下标删除元素,
del a[2:4] #删除a表下标为2,3的元素
del a[:] #删除a列表所有元素
del a #删除列表

列表推导式:
代码如下:

vec = [2,4,6]
[3*x for x in vec if x<6] >>>[6,12] 3*2,3*4
vec2 = [1,2,3]
[x*y for x in vec for y in vec2] >>>[2,4,6,4,8,12,6,12,18]

嵌套列表推导式:
代码如下:

mat = [
[1,2,3],
[4,5,6],
[7,8,9]
]
print ([[row[i] for row in mat] for i in [0,1,2]])
>>>[[1, 4, 7], [2, 5, 8], [3, 6, 9]]

思考:list (zip(mat)) 和 list (zip(*mat))结果会有什么不同

2.元组

空元组:t = ()
元组赋值: t = (123,345)
t[0] >>>123
3.字典

代码如下:

d = {'Jack':'jack@mail.com','Tom':'Tom@main.com'}
d['Jack']         >>>'jack@mail.com
d['Jim'] = 'Jim@sin.com' >>>{'Jim': 'Jim@sin.com', 'Jack': 'jack@mail.com', 'Tom': 'Tom@main.com'}

  del d['Jim'] >>>{'Jack': 'jack@mail.com', 'Tom': 'Tom@main.com'}
list(d.keys()) #将返回一个字典中所有关键字组成的无序列表
sorted(d.keys()) #将返回一个字典中所有关键字组成的排序列表
dict() #构造函数可以直接从key-value对中创建字典
dict([('Tim',123),('Tiny',234)]) >>>{'Tiny': 234, 'Tim': 123}

推导式创建字典:
代码如下:

{d2:d2+'@main.com' for d2 in list(d.keys())}
>>>{'Jack': 'Jack@main.com', 'Tom': 'Tom@main.com'}


练习:循环输出字典中的键值对:
代码如下:

for name,email in d.items():
print(name,email)


4.集合

空集合:A = set() ※想要创建空集合,必须使用set()

演示:
代码如下:

basket = {'apple','orange','apple'} >>>{'orange', 'apple'} #注意重复的元素只显示一个
'apple' in basket >>>True
'pear' in basket >>>False

集合的数算:
代码如下:

a = set('ababcdabca') >>>{'c', 'b', 'a', 'd'}
b = {'a','b','m'} >>>{'b', 'a', 'm'}
a - b >>>{'c', 'd'}
b - a >>>{'m'}
a | b >>>{'c', 'd', 'b', 'a', 'm'}
a & b >>>{'a','b'}
a ^ b >>>{'c','d','m'}

集合推导式:
代码如下:

{x for x in a if x not in 'ab'} >>>{'c','d'}

希望本文所述对大家的python程序设计有所帮助。

下载本文
显示全文
专题