day5 字典 dict
数据类型划分:可变数据类型,不可变数据类型
不可变数据类型:元组,数字,布尔,str, == 可哈希
可变数据类型:list , dict, set == 不可哈希
dict的 key 必须是不可变数据类型,可哈希
value 任意数据类型.
dict 优点: 二分查找去查询
储存大量的关系型数据
特点:python3.5及以前都是无序的
dic1 = {'age':18,'name':'jin','sex':'male'}
# 增add
dic1['height'] = 185 # 没有键就新增
dic1['age'] = 17 # 有键会覆盖
dic1.setdefault('weight')
dic1.setdefault('weight', 150) #有键值对不做任何改变,没有就添加
print(dic1)
# 删del
print(dic1.pop('age')) #返回key的value
print(dic1.pop('erge','没有二哥key')) #没有该key会报错,但是可以自己指定一个value作为返回值
# 删除操作未知字典的键时
print(dic1)
print(dic1)
dic1.popitem() #随机删除 有返回值 元组, 元组里面是删除的键值
print(dic1)
print(dic1)
del dic1['name']
print(dic1)
dic1.clear() #清空字典
# 改 updata
dic1['age'] = 16
dic = {'name': 'jin', 'age': 18, 'sex': 'male'}
dic2 = {'name': 'alex', 'weight': 63}
dic2.update(dic)
print(dic)
print(dic2)
#updata 操作 ,覆盖添加,有的覆盖,没有的添加
# 查select
dic1 = {'age':18,'name':'jin','sex':'male'}
print(dic1.keys())
print(dic1.values())
print(dic1.items())
for i in dic1:
print(i)
for i in dic1.values():
print(i)
for k, v in dic1.items():
print(k, v)
v1 = dic1['name']
print(v1)
v2 = dic1['name1']
print(v2) 报错
v3 = dic1.get('name1', '没有该key')
# 可自己设置返回值
print(v3)
day5 字典 dict的更多相关文章
- day5:字典dict
1, 判断是不是列表 li = ['lis3a', 'mary', 'lucy', 'hh', 'kk', 'gg', 'mm', 'oo', 'vv'] if type(li) == list: p ...
- python中几个常见的黑盒子之“字典dict” 与 “集合set”
这里说到"字典dict" 和 "集合set"类型,首先,先了解一下,对于python来说,标准散列机制是有hash函数提供的,对于调用一个__hash__方法: ...
- Python中的元组(tuple)、列表(list)、字典(dict)
-------------------------------更新中-------------------------------------- 元组(tuple): 元组常用小括号表示,即:(),元 ...
- python中字典dict的操作
字典可存储任意类型的对象,由键和值(key - value)组成.字典也叫关联数组或哈希表. dict = {' , 'C' : [1 , 2 , 3] } dict['A'] = 007 # 修改字 ...
- python中的字典(dict),列表(list),元组(tuple)
一,List:列表 python内置的一种数据类型是列表:list.list是一种有序的数据集合,可以随意的添加和删除其中的数据.比如列出班里所有的同学的名字,列出所有工厂员工的工号等都是可以用到列表 ...
- Python - 字典(dict) 详解 及 代码
字典(dict) 详解 及 代码 本文地址: http://blog.csdn.net/caroline_wendy/article/details/17291329 字典(dict)是表示映射的数据 ...
- Redis的字典(dict)rehash过程源代码解析
Redis的内存存储结构是个大的字典存储,也就是我们通常说的哈希表.Redis小到能够存储几万记录的CACHE,大到能够存储几千万甚至上亿的记录(看内存而定),这充分说明Redis作为缓冲的强大.Re ...
- python基础之字典dict和集合set
作者:tongqingliu 转载请注明出处:http://www.cnblogs.com/liutongqing/p/7043642.html python基础之字典dict和集合set 字典dic ...
- 自学Python2.4-基本数据类型-字典dict(objct)
Python dict方法总结 一.字典介绍 1.字典概述 ①字典是python中唯一内建的映射类型.又称关联数组或散列②映射类型对象里哈希值(键,key)和指向的对象(值,value)是一对多的的关 ...
随机推荐
- 快速了解Lambda表达式-Java
目录 lambda表达式 前言 简介 简单入门 用法 好处 总结 lambda表达式 前言 最近因为疫情,也不能正常返校什么的,希望大家都能好好的,希望武汉加油,中国加油,在家也看了很多视频,学了一点 ...
- sqlserver datatime value plus random number
If we want to make some identiity value in sqlserver , we can use identity data type in a table.Howe ...
- 林大妈的JavaScript进阶知识(二):JS异步行为
JavaScript 是单线程执行的 JavaScript运行在浏览器中.浏览器是多线程的,但只分配了其中一条给JavaScript,作为它的主线程.对于编码者来说,JavaScript是单线程的.因 ...
- LeetCode 681. Next Closest Time 最近时刻 / LintCode 862. 下一个最近的时间 (C++/Java)
题目: 给定一个"HH:MM"格式的时间,重复使用这些数字,返回下一个最近的时间.每个数字可以被重复使用任意次. 保证输入的时间都是有效的.例如,"01:34" ...
- 《古剑奇谭3》千秋戏辅助工具(前端React制作)
前言 一直身在武汉,基于众所周知的疫情原因,这个春节只能宅着. 不过其实这个春节是这些年来过得最爽的一个了. 没有鞭炮,不用四处跑,安安心心呆在家里玩玩游戏看看书写写代码,其实日子过得还是挺悠闲的. ...
- Thread类的interrupted方法和isInterrupted方法的区别
如下所示,interrupted()会改变线程的中断状态(清除),而isInterrupted()不影响线程的中断状态 /** * Tests whether the current thread ...
- filebeat+kafka
kafka出现接收不到filebeat数据,最后发现版本兼容问题 filebeat换成 filebeat-7.4.2-linux-x86_64 kafka是docker-compose启动的,版本是 ...
- cdh集群hive升级,数据不丢失
1.下载hive-1.2.1安装包 http://archive.apache.org/dist/hive/hive-1.2.1/apache-hive-1.2.1-bin.tar.gz 2.将安装包 ...
- Mysql 初始化 及 密码管理
安装好mysql后,第一次初始化数据库 前言:启动mysql数据库最好不要使用root用户,而是使用mysql用户启动 官方解释: (永远不要使用root帐号启动MySQL Server.这样做很危险 ...
- vim 快捷键方式
https://juejin.im/post/5ab1275d5188255588053e70#heading-14 安装方式 https://juejin.im/entry/57b281f72e95 ...