python --- 05 字典 集合
一、字典
可变数据类型
{key:value}形式 查找效率高 key值必须是不可变的数据类型
1.增删改查
1).增
dic["新key"] = "新value" 追加新元素
dic.setdefault(新key,新value) 如果key存在 不添加
如果key不存在, 添加{新key:新value}
2).删
.pop("key") 关键字删除
.popitem() 删除最后一项(早期时字典是无序的,就是随机删除一项)
del dic["key"] 索引和切片删除
dic.clear() 清空
3).改
dic.["老key"] = "新value"
dic.update(dic1) 更新 把dic1中的内容更新到dic中
4).查
① dic[key] 关键字查找 没有时报错
② .get(key) 没有时返回 None
.get("key",没有这个) 没有时返回“没有这个”
③ .setdefault(key,value)
key存在时, 把 老value 查出来
key不存在时,添加 新的key和value, 并查出来
5).其他操作
.key() 获取所有的key值
.value() 获取所有的value值
.items() 获取所有的 键值对
2.dic的遍历 for循环
遍历字典两套方案
dic = {"赵四":"刘晓光", "刘能":"王晓利", "王木生":"范伟"}
①. 使用for循环直接遍历字典的key
for key in dic:
print(key)
print(dic[key])
②. 可以使用字典的items()+解构可以直接获取到key和value(解包)
for k, v in dic.items():
print(k)
print(v)
二、集合 set() { } 表示
本事是无序的、不重复的、可变的、 不可哈希的 。
1.内部元素是不可变的 ,因此不可嵌套 。 是一种只含key的字典。
2. ① 没有索引和切片
②增
.add("x")
.update({"xx"}) 添加元素 "xx"
.update("xx") 添加两个元素 "x"
③删
.pop() 随机删除一个
.remove("x") 指定删除
④改 先删后加
⑤查 for循环
⑥交集 s1 & s2
s1.intersection(s2)
⑦差集 s1 - s2
s1.differrence(s2)
⑧并集 s1 | s2
s1.union(s2)
⑨反交集 s1 ^ s2
s1.symmetric_difference(s2)
⑩ s = frozenset(set()) 把集合变成 不可变 的
python --- 05 字典 集合的更多相关文章
- python :列表 字典 集合 类 ----局部变量可以改全局变量
#列表 字典 集合 类 ----局部变量可以改全局变量,除了整数和字符串 names=["alex","jack","luck"] def ...
- python之路---05 字典 集合
二十.字典 可变数据类型 {key:value}形式 查找效率高 key值必须是不可变的数据类型 1.增删改查 1).增 dic["新key"] = "新v ...
- python元组-字典-集合及其内置方法(下)
列表补充 补充方法 清空列表 clear # clear 清空列表 l = [1, 2, 3, 4, 4] print(l.clear()) # clear没有返回值(None) print(l) # ...
- python 07 字典 集合
字典 key:value 键:值 映射,哈希值,关系(数组) x=['1','2'] y=['a','b'] >>print(y[x.index('1')]) a index() 函数用于 ...
- python 05—字典
一.字典的键是唯一的 键:简单对象,例[字符串.整数.浮点数.bool值] list不能作为键,但可以作为值. 例: score = { '萧峰' : 95, '段誉' : 97, '虚竹' : 89 ...
- python 05 字典
[TOC] 字典——dict { } 字典是无序,可变的数据类型. 字典:用于存储数据,存储大量数据,字典要比列表快:将数据和数据之间进行关联. 1. 定义: dic = {键:值,键:值} #每 ...
- Python中字典和集合
Python中字典和集合 映射类型: 表示一个任意对象的集合,且可以通过另一个几乎是任意键值的集合进行索引 与序列不同,映射是无序的,通过键进行索引 任何不可变对象都可用作字典的键,如字符串.数字.元 ...
- python中列表 元组 字典 集合的区别
列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计 ...
- python --->字典 集合 学习笔记
1.字典--->创建空字典:dict={} broa=["李宁",”耐克“,“阿迪达斯”,“鱼c工作室”] sloga=[“A”,“B”,“C”,“D”] dict={&qu ...
随机推荐
- keepalived+双主架构
简介 keepalived是基于VRRP协议的,全称 Virtual Redundent Routing Protocal 虚拟路由协议,为解决静态路由单点故障引起的网络失效问题设计的一套主备协议 两 ...
- CentOS下挂载数据盘
CentOS下挂载数据盘 1.显示磁盘使用情况:#df 2.显示磁盘:#fdisk -l 3.格式化分区:#mkfs.ext4 /dev/vdb1 //注:将/dev/vdb1格式 ...
- sqlserver备份还原数据库时报占用错误
.做项目时遇到这种情形:原来的test_dev数据库,想复制出test_ft供测试用.此时备份test_dev出test_backup文件,想直接还原成test_ft时会报占用错误. 还原数据库:Th ...
- c扩展开发
为什么要用C扩展 C是静态编译的,执行效率比PHP代码高很多.同样的运算代码,使用C来开发,性能会比PHP要提升数百倍.IO操作如CURL,因为耗时主要在IOWait上,C扩展没有明显优势. 另外C扩 ...
- 回声状态网络(ESN)基础教程
http://jlearning.cn/2017/05/29/ESN-basic-tutorial/ 最近在看回声状态网络(Echo State Network)的内容,注意到中文搜索引擎搜不到关于有 ...
- E. Gerald and Giant Chess
E. Gerald and Giant Chess time limit per test 2 seconds memory limit per test 256 megabytes2015-09-0 ...
- chromedriver 全屏 翻页 错误
from selenium import webdriver from selenium.common.exceptions import TimeoutException, StaleElement ...
- Linux 运维测试及第三应用及测试工具
一 .第三方应用及测试工具链接地址 https://pan.baidu.com/s/1rLQ5NCZvxcy93YQ4fGFaBQ 1.linux LSI系列raid卡监测工具 1)使用参数详解链接: ...
- usdt转入转出出入金开发
usdt转入转出出入金开发 比特币协议 -> Omni 层协议 -> USDTUSDT是基于比特币omni协议的一种代币: https://omniexplorer.info/asset/ ...
- golang学习笔记6 beego项目路由设置
golang学习笔记5 beego项目路由设置 前面我们已经创建了 beego 项目,而且我们也看到它已经运行起来了,那么是如何运行起来的呢?让我们从入口文件先分析起来吧: package main ...