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( ...
随机推荐
- php二维数组排序方法(array_multisort,usort)
一维数组排序可以使用asort.ksort等一些方法进程排序,相对来说比较简单.二维数组的排序怎么实现呢?使用array_multisort和usort可以实现 例如像下面的数组: $users = ...
- Java开源中文分词类库
IKAnalyzer IKAnalyzer是一个开源的,基于java语言开发的轻量级的中文分词工具包.从2006年12月推出1.0版开始,IKAnalyzer已经推出了3个大版本.最初,它是以开 ...
- day17-jdbc 8.ResultSet介绍
但是这些东西在mysql那里有问题.mysql的驱动不是很完善.getClob().getBlob()不好使不是因为程序的问题,而是因为mysql驱动的问题,oracle驱动就没有这个问题,证明ora ...
- 使用java开源包解析ifc并获取数据(树形结构)
import java.io.File;import java.util.Collection;import java.util.Enumeration;import java.util.HashM ...
- Oracle 系统表大全
数据字典dict总是属于Oracle用户sys的. 1.用户: select username from dba_users; 改口令 alter user spgroup identified by ...
- c# 大文件分割 复制 Filestream 进度条
大文件分割复制,每次复制100M 也可以复制别的较大数值. 小于1G的小文件就直接复制得了.代码里没写 ,但是很简单 直接写进去就好了,难得是分割复制 所以没写. 好吧 我还是改了 改成小文件也可以复 ...
- Quick Reference Card Urls For Web Developer
C# C# Cheatsheet & Notes Coding Guidelines for C# 3.0, 4.0, 5.0 Core C# and .NET Quick Reference ...
- KDevelop4调试pcl一直读取不到.pcd文件
如题所示,KD下,能编译,运行时一直使用reader.read读取不到pcd,但是使用cmake能正常运行. 后来,使用terminator删掉工程的build文件夹,直接在工程文件下进行编译,报错提 ...
- Miners
Miners 有三种食品,两组矿工.矿工们根据最近三次过来的食品车产煤,产出煤的个数就是新过来的食品车,和前面两辆车中,不同的食品车的个数. 现在你有一个长度为n的食品车序列,请合理分配它们给两组矿工 ...
- windows-bat配置环境变量的几个坑点
今天因为学校机房问题,想自动化安装vim,不料在编bat的时候不熟练,搞了很久. 坑点1.%path%访问到的是用户的path,而不是系统的path.所以增加环境变量的时候只能增加用户的path.我就 ...