day_05 字典
1. 字典
1.成对保存数据 ,以key:value形式保存
2.以{}表示,每项内容都是key:value,元素之间用逗号隔开
3.key是不可重复的
4.字典以hash算法来计算key的hash值,使用hash值来保存数据
hash算法得到唯一的值(可能很大,可能很小.可能正数,可能负数)
可hash(不可变)数据类型:int bool str tuplu
不可hash数据类型:list dic set
5.hash算法是无序的,所以字典的储存是无序的
2. 增改删查
1.增
1.dic.["key"]=value dic[字典中不存在的key]=value,如果已存在key,会修改value值
2.setdefault('key',value) 如果字典中key存在,就不会进行任何操作
2.删
1.pop(key) 指定key删除
2.popitem() 看到的是删除最后一个,实际是随机删除的
3.clear() 清空
4.del dic[key]
3.修改
1.dic[key]=新value dic[已经存在的key]=新value
2.dic.update(dic2) 把dic2的内容覆盖到dic1中,如果key存在,则修改value值,
如果key不存在则新增
4. 查询
通过key来查找具体数据
dic[key] 可能会报错 如果key不存在,会报错
dic.get(key) 当key不存在,默认返回NONE
dic.setdefault("x","y") 当key不存在,默认返回y值,当key存在,返回value
3.常见操作
keys() key的集合
values() value的集合
items() 键值对的集合(key,value)
真正的字典的迭代,拿到就是key以及value
for k in dic.keys():
print(k) 类似列表,但不是列表,可以把他当列表用
print(dic(key))
for value in vaues():
print(value) 类似列表,但不是列表,可以把他当列表用
for k,v in items():
print(k,v) 这个东西是列表,但是列表里面装的是元组
延伸:结构
a,b=2,3
print(a,b) 结果是2,3(结构的时候注意数量要匹配)
day_05 字典的更多相关文章
- 【DG】Oracle_Data_Guard官方直译
[DG]Oracle Data Guard官方直译 1 Oracle Data Guard 介绍 Oracle Data Guard概念和管理10g版本2 Oracle Data Guard ...
- DVWA实验之Brute Force(暴力破解)- Low
DVWA实验之Brute Force-暴力破解- Low 这里开始DVWA的相关实验~ 有关DVWA环境搭建的教程请参考: https://www.cnblogs.com/0yst3r-2 ...
- Oracle错误览表
Oracle 错误总结及问题解决 ORA 本文转自:https://www.cnblogs.com/zhangwei595806165/p/4972016.html 作者@承影剑 ORA-0 ...
- Javacript实现字典结构
字典是一种用[键,值]形式存储元素的数据结构.也称作映射,ECMAScript6中,原生用Map实现了字典结构. 下面代码是尝试用JS的Object对象来模拟实现一个字典结构. <script& ...
- python 数据类型 ----字典
字典由一对key:value 组成的 python中常用且重量级的数据类型 1. key , keys, values 字典由一对key:value 组成的 python中常用且重量级的数据类型 1. ...
- 增强版字典DictionaryEx
代码 public class DictionaryEx<TKey, TValue> : IDictionary<TKey, TValue> { /// <summary ...
- python学习笔记(字符串操作、字典操作、三级菜单实例)
字符串操作 name = "alex" print(name.capitalize()) #首字母大写 name = "my name is alex" pri ...
- python之最强王者(8)——字典(dictionary)
1.Python 字典(Dictionary) 字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包 ...
- python序列,字典备忘
初识python备忘: 序列:列表,字符串,元组len(d),d[id],del d[id],data in d函数:cmp(x,y),len(seq),list(seq)根据字符串创建列表,max( ...
随机推荐
- Java构造函数中调用构造函数
在Java中,当为一个类创建了多个构造函数时,有时想在一个构造函数中调用另一个构造函数以减少代码量.这时可以使用this关键字来实现. 通常,当使用this关键字时,它意味着"这个对象&qu ...
- ArcGIS10拓扑规则-面规则(转)
ArcGIS10拓扑规则-面规则 原创 2013年12月27日 10:20:44 标签: ArcGIS 1879 ARCGIS 10 里提供的拓扑规则共32种,下面一一介绍: 首先介绍的对于面图层的拓 ...
- css知多少(5)——选择器(转)
css知多少(5)——选择器 1. 引言 从本节开始,就进入本系列的第二个部分——css和html的结合——说白了就是选择器. CSS中定义了样式,如何将这些样式设置到相应的html节点上?就不得 ...
- iOS Simulator hang up ( Xcode4.6.3)
最近遇见个Xcode的bug,搞的十分郁闷. 具体现象是:程序前段时间都是好好的,可以运行,第二天开机,调试就无法进入模拟器.就连main()函数都进不了.模拟器完全挂起了.具体说来就是代码一句都没改 ...
- p4570 [BJWC2011]元素
传送门 分析 对法力值从大到小排序然后对编号跑线性基即可 代码 #include<iostream> #include<cstdio> #include<cstring& ...
- 利用HTML5 与CSS3 做的放大镜
利用HTML5 与CSS3 做的放大镜 html结构 <div class="wrap"> <div class="move"> < ...
- 《Maven实战》笔记-8-构建部署Web项目
一.Web项目结构 1.显式指定Web项目打包方式为war: 2.默认目录 根据“约定大于配置”的规则,Web项目的类及资源文件默认位置为src/main/java和src/main/reso ...
- C#中的多线程 - 高级多线程
1非阻塞同步Permalink 之前,我们描述了即使是很简单的赋值或更新一个字段也需要同步.尽管锁总能满足这个需求,一个存在竞争的锁意味着肯定有线程会被阻塞,就会导致由上下文切换和调度的延迟带来的开销 ...
- signalR之java client的websocket BUG处理
最近在用SignalR,服务端已经写好(老铁,没毛病,很稳),然后有坑的是我还得写App端,那就撸吧,java也不是什么很难的东西.奈何坑多(已经踩了一波android的控件bug),这次遇到了MS的 ...
- Web Api 测试工具
1.调用POST方法:使用Chrome流量器的PostMan工具. 前端模拟发送数据/调试的好工具:Chrome下的Postman-REST Client 下载地址 https://chrome.go ...