Python的数据结构有什么?一文带你看懂

Admin 2021-08-17 群英技术资讯 416 次浏览

    这篇文章主要介绍了Python的数据结构以及相关的示例操作,对于新手学习Python具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

    一、列表

    创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来

示例:
list01 = ['a','b','c']

    1.1 列表更新元素

    一个列表是可以储存不同的类型的数据结构,并且修改的新元素也不一定需要和原来的元素类型一致,但是要注意的是,更新列表的索引必须是已存在的索引,不能对超出列表的索引更新元素

    1.2 列表增加元素

    增加元素的方法:

    1.append方法:在列表的最后增加一个元素。

list01 = ['a', 'b', 'c']
list01 .append('d')
print(list01)
list01 .append(['e', 'f'])
print(list01)
执行结果:
['a', 'b', 'c', 'd']
['a', 'b', 'c', 'd', ['e', 'f']]

    2.extend方法:在列表的最后增加多个元素。

list01 = ['a', 'b', 'c']
list01 .extend(['d', 'e', 'f'])
print(list01)
执行结果:
['a', 'b', 'c', 'd', 'e', 'f']

    3.insert方法:在列表的中间插入一个元素。

list01 = ['a', 'b', 'c']
list01 .insert(1,'d')
print(list01)
执行结果:
['a', 'd', 'b', 'c']

    1.3 列表删除元素

    删除元素的方法:

    1.pop方法:pop(index)可以删除指定位置的元素,并且把这个元素作为返回值返回,如果不指定位置则默认选择最后一个元素。

list01 = ['a', 'b', 'c']
list01 .pop()
print(list01)
list01 .pop(0)
print(list01)
执行结果:
['a', 'b']
['b']

    2.remove方法:可以根据元素内容对元素进行删除。

list01 = ['a', 'b', 'c']
list01.remove('a')
print(list01)
执行结果:
['b', 'c']

    3.del方法:还可以使用关键字“del”根据索引删除列表的元素。

list01 = ['a', 'b', 'c']
print(list01)
del list01 [0]
print(list01)
执行结果:
['a', 'b', 'c']
['b', 'c']

    1.4 列表的其他操作

    1.index方法:查找元素在列表中的索引位置。

list01 = ['a', 'b', 'c']
print(list01 .index('a'))
print(list01 .index('b'))
执行结果:
0
1

    2.reverse方法:反转队列,反转原来的队列,并且没有返回值。

list01 = ['a', 'b', 'c']
list01 .reverse()
print(list01)
执行结果:
['c', 'b', 'a']

    3.count方法:统计某个元素在列表中的次数。

list01 = ['a', 'b', 'c','b', 'c']
print(list01 .count('a'))
print(list01 .count('b'))
执行结果:
1
2

    4.sort方法:队列表进行排序,还可以自定义排序方式。

list02 = [1,88,66,22]
list02.sort()
print(list02)
执行结果:
[1, 22, 66, 88]

    二、元组

    创建一个元组,只要把逗号分隔的不同的数据项使用小括号括起来。如果元组中只有一个元素,还需要元素后加上“,”,才能定义一个元组

tuple01 = ('a','b','c')

    2.1 删除元组

    由于元组是不能修改的,所以元组也不能单独删除,只能删除整个元组

    1.del方法:删除整个元组

tuple01 = ('a','b','c')
del tuple01 
print(tuple01)
执行结果:
发生异常: NameError
name 'tuple01' is not defined
发生异常是正确的,说明tuple01 已经被删除了

    2.2 元组的其他操作

    1.count方法:用于统计元素在元组中出现的次数

tuple02 = ('a', 'b', 'c','b', 'c')
print(tuple02.count('a'))
print(tuple02.count('b'))
执行结果:
1
2

    2.index方法:用于查找元素在元组中的索引位置

tuple02 = ('a', 'b', 'c','b', 'c')
print(tuple02.index('a'))
print(tuple02.index('b'))
执行结果:
0
1

    3.len方法:计算元组元素个数

tuple02 = ('a', 'b', 'c','b', 'c')
print(len(tuple02))
执行结果:
5

    4.max,min方法返回元组中最大,最小的值

tuple02 = (1, 88, 66, 22)
print(max(tuple02))
print(min(tuple02))
执行结果:
88
1

    三、字典

    字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值 key=>value 对用冒号 : 分割,每个对之间用逗号(,)分割,整个字典包括在花括号 {} 中。

dict01 = {'a':'深圳','b':22,'c':22.22}

    3.1 字典删除元素

    1.del方法:使用关键字“del”根据键删除列表的元素

dict01 = {'a':'深圳','b':22,'c':22.22}
print(dict01)
del dict01['a']
print(dict01)
执行结果:
{'a': '深圳', 'b': 22, 'c': 22.22}
{'b': 22, 'c': 22.22}

    3.2 字典的其他操作

    1.clear方法:用于清空字典里的所有元素,使字典变为空字典。

dict01 = {'a':'深圳','b':22,'c':22.22}
print(dict01)
dict01.clear()
print(dict01)
执行结果:
{'a': '深圳', 'b': 22, 'c': 22.22}
{}

    2.copy方法:返回一个具有相同键值对的新字典。

dict01 = {'a':'深圳','b':22,'c':22.22}
print(dict01)
dict01.copy()
print(dict01)
执行结果:
{'a': '深圳', 'b': 22, 'c': 22.22}
{'a': '深圳', 'b': 22, 'c': 22.22}

    3.fromkeys方法:用于创建一个新字典,用序列中的元素作为字典的键,第二个参数为字典所有参数对应的初始值。

tuple01 = ("name","age","city")
hunan1 = dict.fromkeys(tuple01)
human2 = dict.fromkeys(tuple01,20)
print(hunan1)
print(human2)
执行结果:
{'name': None, 'age': None, 'city': None}
{'name': 20, 'age': 20, 'city': 20}

    4.get方法:返回键对应的值,如果字典不存在对应的键则返回none

dict01 = {'a': '深圳', 'b': 22, 'c': 22.22}
print(dict01.get('a'))
print(dict01.get('d'))
执行结果:
深圳
None

    5.keys方法:返回一个列表,里面包含了字典里的所有键

dict01 = {'a': '深圳', 'b': 22, 'c': 22.22}
print(dict01.keys())
执行结果:
dict_keys(['a', 'b', 'c'])

    6.valuse方法:返回一个列表,里面包含了字典的所有值

dict01 = {'a': '深圳', 'b': 22, 'c': 22.22}
print(dict01.values())
执行结果:
dict_values(['深圳', 22, 22.22])

    7.items方法:返回一个列表,里面包含了所有键值对的列表

dict01 = {'a': '深圳', 'b': 22, 'c': 22.22}
print(dict01.items())
执行结果:
dict_items([('a', '深圳'), ('b', 22), ('c', 22.22)])

还可以使用items方法来遍历字典

dict01 = {'a': '深圳', 'b': 22, 'c': 22.22}
for k, v in dict01.items():
    print(k,v)
执行结果:
a 深圳
b 22
c 22.22

    四、集合

    集合(set)是一个无序的不重复元素序列。可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

set01 = {1, 2, 2, 2, 2, 3, }
print(set01)
set02 = {1, 2, 3, }
print(set02)
执行结果:
{1, 2, 3}
{1, 2, 3}

    4.1 集合添加元素

    1.add方法:为集合添加一个元素

set01 = {1, 2, 3}
set01.add(4)
set01.add(3)
print(set01)
执行结果:
{1, 2, 3, 4}

    4.2 集合删除元素

    1.remove方法:为集合删除一个元素

set01 = {1, 2, 3}
set01.remove(1)
print(set01)
执行结果:
{2, 3}

    五、其他操作

1.clear()	移除集合中的所有元素
	2.copy()	拷贝一个集合
	3.difference()	返回多个集合的差集
	4.difference_update()	移除集合中的元素,该元素在指定的集合也存在。
	5.discard()	删除集合中指定的元素
	6.intersection()	返回集合的交集
	7.intersection_update()	返回集合的交集。
	8.isdisjoint()	判断两个集合是否包含相同的元素,如果没有返回 True,否则返回 False。
	9.issubset()	判断指定集合是否为该方法参数集合的子集。
	10.issuperset()	判断该方法的参数集合是否为指定集合的子集
	11.pop()	随机移除元素
	12.symmetric_difference()	返回两个集合中不重复的元素集合。
	13.symmetric_difference_update()	移除当前集合中在另外一个指定集合相同的元素,并将另外一个指定集
	14.合中不同的元素插入到当前集合中。
	15.union()	返回两个集合的并集
	16.update()	给集合添加元素

    以上就是关于Python的数据结构以及操作的介绍了,对于新手学习Python,掌握基础的Python的数据结构是很重要的,希望文本对大家学习有帮助,想要了解更多Python的数据结构的内容大家可以继续关注其他文章。

文本转载自脚本之家

群英智防CDN,智能加速解决方案

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

猜你喜欢

成为群英会员,开启智能安全云计算之旅

立即注册
专业资深工程师驻守
7X24小时快速响应
一站式无忧技术支持
免费备案服务
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
在线客服
微信公众号
返回顶部
返回顶部 返回顶部
在线客服
在线客服