python3字典列表_python3入门(3)---列表、元组、字典、集合详解
列表类型
访问list的值:
list1 = [1, 2, 3, 4, 5]
print(list1[0]) # 1
print(list1[0: 1]) #[1]
print(list1[0: 2]) #[1, 2]
print(list1[1:]) # [2, 3, 4, 5]
print(list1[: 2]) # [1, 2]
print(list1[::-1]) # [5, 4, 3, 2, 1]
print(list1[-2]) #4
更新list:
list1[2] = 1000
print(list1) #[1, 2, 1000, 4, 5]
删除list中元素:
del list[1]
print(list1) #[1, 1000, 4, 5]
其他:
list1 = [1, 2, 3, 4, 5]
print(list1 + [6, 7]) # [1, 2, 3, 4, 5, 6, 7]
print(list1 * 2) #[1, 2, 3, 4, 5, 1, 2, 3, 4, 5]
len(list) # 5
print(7 in list1) # False
## 遍历list
for item in list1:
print(item)
for i in range(0, len(list1)):
print(list1[i])
嵌套列表,类似于多维数组:
list1 = [1, 2, 3]
list2 = ['a', 'b', 'c', 'd']
list3 = [list1, list2]
print(list3) # [[1, 2, 3], ['a', 'b', 'c', 'd']]
print(list3[0]) #[1, 2, 3]
print(list3[1][2]) # c
列表函数&方法:
名称
含义
min(list)
返回list中最小值
max(list)
返回list中最大值
len(list)
返回list的长度
list(seq)
将序列seq转换为list,支持list,tuple,set,dict,dict只获取dict.keys()
list.append(obj)
list末尾新增obj,直接作用于list,返回值为None
list.count(obj)
统计obj在list中出现的次数
list.extend(seq)
在list末尾增加序列seq,支持list,tuple,set,dict,dict只获取dict.keys()
list.index(obj)
找出obj在list中第一个匹配的下标,没有则抛出异常ValueError: obj is not in list
list.insert(index, obj)
将obj插入list,指定索引为index
list.pop([index])
移除列表中一个元素,默认为-1(最后一个),也可以指定index
list.remove(obj)
查找到第一个obj元素,并从列表中移除obj
list.reverse()
反转list
list.sort([key, reverse])
reverse为True时,降序排列,为False时(默认),升序排列
list.clear()
清空列表
list.copy()
复制列表
tuple1 = (1, 2, 3, 4)
set1 = {1, 3, 5, 6}
dict1 = {1: 'a', 2: 'b'}
print(list(tuple1)) #[1, 2, 3, 4]
print(list(set1)) #[1, 3, 5, 6]
print(list(dict1)) #[1, 2]
元组
与list相似,只是不能修改
tips:重新赋值的元组 tup,绑定到新的对象了,不是修改了原来的对象
字典
dict1 = {"1": "yi", "2":"er","3":"san"}
## 取值
print(dict1["1"]) # yi
## 修改字典
dict1["1"] = "一"
print(dict1["1"]) # 一
del dict1["1"] #删除字典元素
dict1.clear() #清空字典
del dict1 #删除字典
字典键的特性:
不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住
键必须不可变,所以可以用数字,字符串或元组充当,而用列表就不行
字典内置函数&方法:
dict = {"1": "yi", "2":"er","3":"san"}
名称
含义
len(dict)
dict的长度
dict.copy()
浅拷贝dict
dict.fromkeys(seq)
从seq序列中的元素作为字典的key,值为None
dict.get(key[,default])
从dict中获取key对应的value,不存在默认为None,可以指定default
key in dict
dict中包含key则返回True,否则False
dict.items()
返回一个序列,每一个元素为key-value,可以转换为set、tuple、list
dict.keys()
返回一个序列,每一个元素为key,可以转换为set、tuple、list
dict.setdeault(key[,default])
与get类似,但是如果key不存在与dict中,添加key进入字典dict,default默认为None,可以自定义
dict.update(dict1)
把dict1对应的key-value添加到dict,并更新原有的值
dict.values()
返回一个序列,每一个元素为value,可以转换为set、tuple、list
dcit.pop(key[,default])
删除key对应的值,返回值为value,如果不存在,返回default,默认为None
dict.popitem()
返回一个键值对(key,value)形式,按照 LIFO(Last In First Out 后进先出法) 顺序规则,即最末尾的键值对
list1 = [1,2,3,4]
print(dict2.fromkeys(list1)) # {1: None, 2: None, 3: None, 4: None}
print(dict1.items()) #dict_items([('1', '一'), ('2', 'er'), ('3', 'san')])
print(dict1.keys()) #dict_keys(['1', '2', '3'])
集合
tips:初始化集合不能用{},只能通过set()
a = set('asdfghjkl')
b = set('abcdefghi')
print(a) #{'a', 'g', 'h', 'j', 'f', 'l', 's', 'k', 'd'}
print(b) #{'c', 'a', 'g', 'h', 'b', 'e', 'f', 'i', 'd'}
print(a - b) # a和b的差集 {'s', 'k', 'l', 'j'}
print(a | b) # a和b的合集 {'k', 'l', 'd', 'e', 'h', 'f', 'i', 'c', 's', 'b', 'j', 'a', 'g'}
print(a & b) # a和b的交集 {'d', 'h', 'f', 'a', 'g'}
print(a ^ b) # a和b的全集和交集的差集 {'k', 'l', 'e', 'j', 'i', 's', 'b', 'c'}
## 集合推导式(Set comprehension)
set1 = {x for x in 'aadasfdsf' if x not in 'abc'}
print(set1) #{'d', 's', 'f'}
## 集合添加元素
set.add(obj) #如果元素已存在,不进行任何操作
set.update(obj) #参数可以是列表,元组,字典等
## 移除元素
set.remove(obj) # set中不存在元素,报错
set.discard(obj) #set中不存在元素,不报错
set.pop() #随机删除一个set元素
## 元素个数
len(set)
## 清空
set.clear()
##判断元素是否存在
value in set # value在set中返回True,否则False
python3字典列表_python3入门(3)---列表、元组、字典、集合详解相关推荐
- pycharm python3.7环境_Python3+Pycharm+PyQt5环境搭建步骤图文详解
搭建环境: 操作系统:Win10 64bit Python版本:3.7 Pycharm:社区免费版 一.Python3.7安装 下载到安装包后打开,如果想安装到默认路径(C盘)的话一直点下一步就可以了 ...
- python3 在线加密_Python3对称加密算法AES、DES3实例详解
本文实例讲述了Python3对称加密算法AES.DES3.分享给大家供大家参考,具体如下: python3.6此库安装方式,需要pip3 install pycryptodome. 如有site-pa ...
- J2EE 快速入门之第二章 Set集合详解
一:Collection.remove()与ArrayList.remove()方法的不同 1. Collection中只能根据元素移除 2.ArrayLi ...
- python的装饰器迭代器与生成器_python3 装饰器、列表生成器、迭代器、内置方法详解等(第四周)...
前言: 为什么要学习python3? 原因: 1.学习一门语言能力 2.通过该语言能力完成测试自动化以及独立完成自测框架知识 那么我要做什么呢? 1.每天花十个小时完成python3的学习 要在什么地 ...
- python 元组拆包_Python元组拆包和具名元组解析实例详解
前言 在Python中元组是一个相较于其他语言比较特别的一个内置序列类型.有些python入门教程把元组成为"不可变的列表",这种说法是不完备的,其并没有完整的概括元组的特点.除了 ...
- Linux Shell脚本入门--wget 命令用法详解
Linux Shell脚本入门--wget 命令用法详解 wget是在Linux下开发的开放源代码的软件,作者是Hrvoje Niksic,后来被移植到包括Windows在内的各个平台上.它有以下功能 ...
- Spring Cloud Eureka 入门 (三)服务消费者详解
2019独角兽企业重金招聘Python工程师标准>>> 摘要: 原创出处:www.bysocket.com 泥瓦匠BYSocket 希望转载,保留摘要,谢谢! "真正的进步 ...
- 友情链接在html中怎么写,HTML+CSS入门 网站友情链接显示页面详解
本篇教程介绍了HTML+CSS入门 网站友情链接显示页面详解,希望阅读本篇文章以后大家有所收获,帮助大家HTML+CSS入门. < 1.列表标签 有序列表:type默认是1,2,3--,rese ...
- ROS入门笔记(七):详解ROS文件系统
ROS入门笔记(七):详解ROS文件系统 文章目录 01 Catkin编译系统 1.1 Catkin特点 1.2 Catkin工作原理 1.3 使用`catkin_make`进行编译 02 Catki ...
最新文章
- 【数据平台】基于pyhs2库Python作为client driver连接HiveServer
- 图解一次手动杀马过程
- JavaSE(三)——数组及继承
- 进程资源限制(rlimit)
- html鼠标事件没反应,鼠标有时候点击没反应怎么解决
- 【Oracle经典】132个oracle热门精品资料——下载目录收藏 (转载)
- 搭建视频网站的技术方案
- C#版Windows服务安装卸载小工具-附源码
- aop中joinpoint_Spring AOP示例教程–方面,建议,切入点,JoinPoint,注释,XML配置...
- Sublime Text 3下载-汉化-插件配置
- java面试 线程_Java面试题(线程)
- Dijkstra最短路径
- 如何用wps画三线图(最方便最快的方法)
- 【华为二面】2020/3/25_华为第二次技术面试_45分钟
- Linux进程管理(redhat 8.0)
- 数据分析,如何支持管理层决策
- 闲鱼卖货,月入1.5w的小众类目分享。
- 星座查询演示示例代码
- CF1364D Ehab‘s Last Corollary(思维,环,二分图,构造)
- JFET 共源级放大电路设计