Python3数据结构总结(列表list,元组tuple,集合set,字典dict,堆栈stack,队列queue和遍历技巧)_python queue 遍历元素-程序员宅基地

技术标签: python  遍历  堆栈  队列  Python学习  数据结构  

6种标准数据类型(列表,元组,集合,字典)的对比和初始化

Python3 中有六个标准的数据类型:

  • Number(数字)
  • String(字符串)
  • List(列表)
  • Tuple(元组)
  • Set(集合)
  • Dictionary(字典)

6种数据类型对比

数据类型 标准用法 说明 数据是否可变 是否属于序列
Number(数字) a = 123.4 包含4种基本类型:int、float、bool、complex(复数)
String(字符串) str = ‘liukai’ 字符串可以被索引和切片,但是不能更改
List(列表) list = [‘k’,‘a’,‘i’] 列表可以被索引和切片,可以包含所有数据结构
列表切片的时候,可以指定步长,如letter[1:4:2]
有pop,append等方法
可变数据
Tuple(元组) tuple = (‘liu’,‘kai’) tuple元素不可变,但是可以包含list列表可变对象
空元组初始化:tup0 = ()
单元素元组初始化:tup1 = (1,)
Set(集合) values = {a,b,c} 基本功能是进行成员关系测试和删除重复元素
空集合使用set()创建,因为{ }表示空字典
可变数据
Dictionary(字典) dict = {‘name’:‘liukai’, ‘number’:12345} 字典的元素是键值对,关键字不可变,且不能重复
创建空字典用{}
可变数据

4种数据结构的初始化

>>> a = []			# list
>>> b = ()			# tuple
>>> c = set()		# set
>>> d = {
   
    }			# dict

在这里插入图片描述

列表增删改查等常用操作的方法总结

方法 描述
list.append(x) 把一个元素添加到列表的结尾,相当于 a[len(a):] = [x]。
list.extend(L) 通过添加指定列表的所有元素来扩充列表,相当于 a[len(a):] = L,L是一个列表。
list.insert(i, x) 在指定位置插入一个元素。第一个参数是准备插入到其前面的那个元素的索引,例如 a.insert(0, x) 会插入到整个列表之前,而 a.insert(len(a), x) 相当于 a.append(x) 。
list.remove(x) 删除列表中值为 x 的第一个元素。如果没有这样的元素,就会返回一个错误。
list.pop([i]) 从列表的指定位置移除元素,并将其返回。如果没有指定索引,a.pop()返回最后一个元素。元素随即从列表中被移除。(方法中 i 两边的方括号表示这个参数是可选的,而不是要求你输入一对方括号,你会经常在 Python 库参考手册中遇到这样的标记。)
list.clear() 移除列表中的所有项,等于del a[:]。
list.index(x)
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/cliukai/article/details/99947091

智能推荐

Docker使用(三) — Docker部署安装Nginx_docker安装nginx-程序员宅基地

文章浏览阅读2.4w次,点赞9次,收藏79次。Docker部署安装Nginx_docker安装nginx

c语言编写显示一行字程序,C语言文件操作——读一行和写一行-程序员宅基地

文章浏览阅读1.2k次。文件读写其实说简单也简单,会用即可,说复杂也复杂,操作系统文件系统有很多东西需要学习。在此简单介绍一种写日志与读日志的方法——写一行&读一行。1.写一行代码:#include void writeLogLine(const char *fileName,const char *content)//参数:文件全名,写入内容{FILE *fp;//定义文件指针if ((fp=fopen(fil..._c写文件循环一次写一行

315M发射电路原理以及315M无线模块怎么使用_315m 放大电路-程序员宅基地

文章浏览阅读1.4k次,点赞26次,收藏24次。315M发射电路原理以及315M无线模块怎么使用_315m 放大电路

记账系统推荐金蝶精斗云_金蝶精斗云是免费会计记账软件吗?-程序员宅基地

文章浏览阅读1.5k次。金蝶精斗云旗下的财务软件有很多款,其中有一款云报销的产品有免费版,不过金蝶精斗云的云报销虽然是永久免费的,但是功能和权限相对也会更少一些,所以不一定适合你公司。金蝶精斗云旗下产品针对不同的行业、企业的不同规模,产品各有侧重点,可以根据你公司的实际需要挑选,每一款产品根据功能的多寡,价格也是不一样的。金蝶精斗云财务软件是按年收费的。金蝶精斗云旗下的产品包括云会计(财务管理工具),云进销存(采购、销售..._精斗云永久免费

MyBatis批量插入数据_批量提交insrt-程序员宅基地

文章浏览阅读396次。mybatis批量插入数据_批量提交insrt

拥抱.NET Core系列:MemoryCache 初识 (转载)-程序员宅基地

文章浏览阅读52次。阅读目录MSCache能做什么?从IMemoryCache说起开发者的体验写在最后 Cache是一个绝大多数项目会用到的一个技术,说起到缓存可能就联想到 Set、Add、Get、Remove、Clear 这几个方法。那么在.NET Core中微软给我们带来了什么样的缓存体验呢?今天我们就来介绍下”Microsoft.Extensions.Caching.Memory...__memorycache.getorcreate absoluteexpirationrelativetonow 需要与set一起使用嘛

随便推点

华为谷歌android 6.0是什么,谷歌开始推送Android 6.0.1 优化性能为主-程序员宅基地

文章浏览阅读192次。【TechWeb报道】虽然不少手机尚未升级至安卓6.0系统,但是安卓6.0.1却来了。近日,谷歌已经开始推送Android 6.0.1,本次更新的幅度并不大,将会主要以修复bug和优化性能为主,并且此次更新不会改版Android系统的版本号,而包括Nexus 5x、Nexus 6P最新的系统版本依然是Android 6.0。另外,Android 6.1将于明年年初发布,不用说,Android 6...._安卓版本6.0.1高还是6.0

@FeignClient url读取配置文件,为空时使用服务名-程序员宅基地

文章浏览阅读8k次,点赞4次,收藏2次。FeignClient url_@feignclient url

Shader Graph 笔记,持续更新..._shader graph 毛刺效果-程序员宅基地

文章浏览阅读4.8k次,点赞17次,收藏81次。第一次接触Shader Graph 是在18年7月份Shader Graph最佳实践 (Best practices for Shader Graph - Unite 2018 洛杉矶)Unity着色器Procedural绘图简介(非Node/代码逻辑)原解读Unity2018中 ShaderGraph 示例: Procedural[Shader Graph备忘录1]扫描线..._shader graph 毛刺效果

性能测试实战(四):Jmeter的使用_jmeter默认保存路径-程序员宅基地

文章浏览阅读9.1k次,点赞2次,收藏9次。一、初识Jmeter1、Jmeter的文件结构:(1)binjmeter的启动文件以及配置文件。jmeter的默认保存文件路径,也是在jmeter的bin文件夹里;读取文件,默认也是该文件夹。(2)docs文档,开发人员看的接口api文档,如果你要对jmeter进行二次开发,需要阅读此文档。(3)printable_docs文档,这是Jmeter的使用帮助文档(离线帮助)。(4)liblibrary库,存放jmeter源码打成的jar包,以及第三方人员开发的扩展功能jar_jmeter默认保存路径

The FactorySoft OPC Server _组态王fsserver-程序员宅基地

文章浏览阅读2.4k次。The FactorySoft OPC Server 最近在看opc的东西,一开始看的是潘爱民的《COM原理与应用》,这本书买了老早了,几年前领导想在在组态王6.03里面添加我们公司的设备的驱动,到北京组态王的总部去了一趟,没接触过怎么做组态王的驱动,请教了接待我们的MM经理,她说很简单,用到了COM和C++,下午就去了书店买了回来,后来安装上开发包研究了下,书也没看就把驱动写完了,一直放到现在。 后来做工控的上位,西门子的PLC使用的最多,所以_组态王fsserver

Linux:字符串数组和字符串指针的定义赋值操作_linux字符串赋值-程序员宅基地

文章浏览阅读514次。【代码】Linux:字符串数组和字符串指针的定义赋值操作。_linux字符串赋值