Python3数据结构汇总
|
字符 |
列表 |
元组 |
集合 |
字典 |
|
|
能否被索引或切片 |
能 |
能 |
能 |
否 |
否 |
|
元素能否被编辑 |
否 |
能 |
否 |
能 |
能 |
|
增 |
1、list.append(x):把一个元素添加到列表的结尾; 2、list.insert(i, x):在指定位置插入一个元素。第一个参数是准备插入到其前面的那个元素的索引,例如 a.insert(0, x) 会插入到整个列表之前,而 a.insert(len(a), x) 相当于 a.append(x) 。 |
1、添加一个键值对:tel['Mary'] = 4127 |
|||
|
删 |
不允许删除 |
一、通过切片删: 1、移除部分值:a[2:5] = []; 2、清空列表:letters[:] = []; 二、通过del删: 1、移除单个:del a[0]; 2、移除多个:del a[0:2]; 3、清空 :del a[:]; 4、删除整个列表:del a; 三、通过.clear()清空列表: 1、a.clear(),等于del a[:] 其它: 1、list.remove(x):删除列表中值为 x 的第一个元素。如果没有这样的元素,就会返回一个错误; 2、list.pop([i]):从列表的指定位置删除元素,并将其返回。如果没有指定索引,a.pop()返回最后一个元素。元素随即从列表中被删除。(方法中 i 两边的方括号表示这个参数是可选的,而不是要求你输入一对方括号,你会经常在 Python 库参考手册中遇到这样的标记。); |
1、不允许删除元组元素; 2、del语句来删除整个元组:del tup |
1、删除一个键值对:del tel['Rose']; 2、清空:dict.clear(); 3、删除字典:del dict; |
|
|
改 |
不能修改,否则会导致错误 |
1、L[0] = 9; 2、a[2:5] = [13, 14, 15] |
不能修改 |
1、修改某个键的值:tel['Mary'] = 4128 |
|
|
查 |
1、索引:S[x],从左往右以0开始,从右往左以-1开始; 2、切片:S[头下标:尾下标],默认的第一个索引为零,第二个索引默认为字符串可以被分切的长度。 索引中可以使用负数,这将会从右往左计数 |
1、索引:L[x]; 2、切片:L[头下标:尾下标] |
1、索引:T[x]; 2、切片:T[头下标:尾下标] |
通过key查询 |
|
|
len() |
计算元素个数 |
计算元素个数 |
计算元组元素个数 |
计算元素个数 |
计算字典元素个数,即键的总数。 |
|
in |
元素是否存在 |
元素是否存在 |
元素是否存在 |
元素是否存在 |
如果键在字典dict里返回true,否则返回false |
|
not in |
如果在指定的序列中没有找到值返回 True,否则返回 False。 |
同前 |
同前 |
同前 |
同前 |
|
del |
1、删除部分元素; 2、删除实体变量; |
1、删除部分元素; 2、删除实体变量; |
|||
|
list.sort() |
对列表中的元素进行排序。 返回的是对已经存在的列表进行操作,无返回值 |
||||
|
list.reverse() |
倒排列表中的元素。 |
||||
|
list.index(x) |
返回列表中第一个值为 x 的元素的索引。如果没有匹配的元素就会返回一个错误。 |
||||
|
list.count(x) |
返回 x 在列表中出现的次数。 |
||||
|
list.copy() |
返回列表的浅复制,等于a[:]。 |
||||
|
list() |
用于将元组或字符串转换为列表。 |
||||
| sorted(iterable[, cmp[, key[, reverse]]]) |
对所有可迭代的对象进行排序操作。 返回的是一个新的 list,而不是在原来的基础上进行的操作。 |
||||
|
for in |
迭代 |
迭代 |
迭代 |
迭代 |
迭代 |
|
max(tuple) |
返回元组中元素最大值 |
||||
|
min(tuple) |
返回元组中元素最小值 |
||||
|
tuple(seq) |
将列表转换为元组 |
||||
|
+ |
连接 |
连接 |
连接 |
||
|
* |
重复 |
重复 |
重复 |
||
|
- |
差集 |
||||
|
| |
并集 |
||||
|
& |
交集 |
||||
|
^ |
不同时存在的元素 |
||||
|
str(dict1) |
输出字典以可打印的字符串表示 |
||||
|
dict1.keys() |
返回所有key组成的<class 'dict_keys'>,可用list()函数将其转换成一个列表 |
||||
|
dict1.values() |
以<class 'dict_values'>返回字典中的所有值,可用list()函数将其转换成一个列表 |
||||
|
dict1.clear() |
清空字典 |
||||
|
dict1.copy() |
返回列表的浅复制,等于a[:]。 |
返回一个字典的浅复制 |
|||
|
dict.fromkeys(seq[, value])) |
创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值 |
||||
|
dict1.get(key, default=None) |
Python 字典 get() 函数返回指定键的值,如果值不在字典中返回默认值。 |
||||
|
dict1.setdefault(key, default=None) |
如果键不已经存在于字典中,将会添加键并将值设为默认值。 |
||||
|
dict1.update(dict2) |
Python 字典 update() 函数把字典dict2的键/值对更新到dict1里。 |
||||
|
dict1.items() |
以列表返回可遍历的(键, 值) 元组数组 |
||||
|
注意 |
tup1 = () # 空元组 tup2 = (20,) # 一个元素,需要在元素后添加逗号 |
创建一个空集合必须用 set() 而不是 { },因为{ }是用来创建一个空字典。 |
创建空字典使用{ } |
Numbers(数字):
Python 3支持int、float、bool、complex(复数)。
1、数值的除法(/)总是返回一个浮点数,要获取整数使用//操作符。
2、在混合计算时,Pyhton会把整型转换成为浮点数。
Python3数据结构汇总的更多相关文章
- python系列十一:python3数据结构
#!/usr/bin/python #Python3 数据结构'''Python中列表是可变的,这是它区别于字符串和元组的最重要的特点,一句话概括即:列表可以修改,而字符串和元组不能.''' '''将 ...
- python016 Python3 数据结构
Python3 数据结构本章节我们主要结合前面所学的知识点来介绍Python数据结构. 列表Python中列表是可变的,这是它区别于字符串和元组的最重要的特点,一句话概括即:列表可以修改,而字符串和元 ...
- Python数据结构汇总
Python数据结构汇总 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.线性数据结构 1>.列表(List) 在内存空间中是连续地址,查询速度快,修改也快,但不利于频繁新 ...
- C#数据结构汇总
对C#涉及到的数据结构做了一下简单的汇总,若有遗漏,欢迎补充~~ 还是以学习为目的,在此只是简单的介绍一下,希望对大家能有所帮助,能力有限为了不误导大家,不做详细深入的解析,还望见谅,非常欢迎大大们补 ...
- Python2 和 Python3 区别汇总
[Python2 和 Python3 的区别汇总,不定期补充] print 在进行程序调试时用得最多的语句可能就是 print,在 Python 2 中,print 是一条语句,而 Python3 中 ...
- Python3 数据结构
列表 Python中列表是可变的,这是它区别于字符串和元组的最重要的特点,一句话概括即:列表可以修改,而字符串和元组不能. 以下是 Python 中列表的方法: 方法 描述 list.append(x ...
- python3数据结构与算法
python内置的数据结构包括:列表(list).集合(set).字典(dictionary),一般情况下我们可以直接使用这些数据结构,但通常我们还需要考虑比如搜索.排序.排列以及赛选等一些常见的问题 ...
- leetcode常见算法与数据结构汇总
leetcode刷题之后,很多问题老是记忆不深刻,因此特意开此帖: 一.对做过题目的总结: 二.对一些方法精妙未能领会透彻的代码汇总,进行时常学习: 三.总结面试笔试常见题目,并讨论最优解法及各种解法 ...
- 吴裕雄--天生自然python学习笔记:Python3 数据结构
列表 Python中列表是可变的,这是它区别于字符串和元组的最重要的特点,一句话概括即:列表可以修改,而字符串和元组不能. list.append(x) 把一个元素添加到列表的结尾,相当于 a[len ...
随机推荐
- 关于session的一些问题
最近在做项目的时候碰见了session过期的问题,然后就上网查了一些资料,我将我整理过的知识点梳理一下,顺便说一下我的使用方案. Session存储在服务器端,一般为了防止在服务器的内存中(为了高速存 ...
- USACO4.4 Frame Up【拓扑排序】
题意居然还读了好久... 读完题目之后大概就知道拓扑排序了.用拓扑可以求出一些字母之间的关系,谁先,谁后.但是这个关系不是唯一确定的,所以就会产生多种方案(题目还要求按字典序输出所有的方案) 输出方案 ...
- dstat 好用的命令 cpu mem io
1.dstat dstat -lrpm --top-io --top-mem --top-cpu 2.安装 yum -y install dstat
- SQL的DDL和DML
DDL:数据定义语言,定义库.表结构用的DML:数据操作语言,增.删.改.查DCL:数据控制语言,权限.事务等控制语句 (一)DDL1.操作数据库的语句(1)查看当前DBMS中的所有数据库show d ...
- [HAOI2016]字符合并
Luogu3736 很容易想到直接DP,关键是枚举顺序. \(1.\)设后一段构成最后一个点,前一段构成前面的点,那么能得到\(1\)个点的数量要求 : \(1,k,2k-1...\)相差\(k-1\ ...
- [转帖]IntelliJ IDEA 2018.3.3破解方法
IntelliJ IDEA 2018.3.3破解方法 https://blog.csdn.net/qq_42862882/article/details/86477495 验证了下 也可以激活. ...
- 【0.3】mysql复制的日常管理维护,mysql复制常见问题处理
[1]复制的日常管理 #复制的日常管理与维护 [1.1]show slave status\G :在从库查看从库线程状态 [1.2]flush tables with read lock; :主从不 ...
- 在Docker中部署ASP.NET Core 2.2
⒈新建一个ASP.NET Core2.2 Web程序 因为Windows的Docker和Linux的Docker有所不同,本次测试采用的是Linux的Docker,因此没有勾选启用Docker支持. ...
- 阻塞I/O、非阻塞I/O和I/O多路复用、怎样理解阻塞非阻塞与同步异步的区别?
“阻塞”与"非阻塞"与"同步"与“异步"不能简单的从字面理解,提供一个从分布式系统角度的回答.1.同步与异步 同步和异步关注的是消息通信机制 (syn ...
- pc端和移动端的“窗口”(viewport)故事(part1)
A tale of two viewports - part one 在以下的系列文章中,我将为大家解释浏览器中的视窗和一些重要的元素的尺寸是如何起作用的,如:大家最熟悉的html元素以及window ...