python数据类型之字典(dict)和其常用方法
2024-08-30 06:06:06
字典的特征:
key-value结构
key必须可hash,且必须为不可变数据类型、必须唯一。 # hash值都是数字,可以用类似于2分法(但比2分法厉害的多的方法)找。
可存放任意多个值、可修改、可以不唯一
无序
查找速度快 常用方法:
info = {'stu01': 'alex', 'stu02': 'jack', 'stu03': 'jucy'}
# 关键字:info.keys(),值:info.values()
print('stu01' in info) # True
print(info['stu01']) # alex 没有会报错
print(info.get('stu01')) # alex 没有不会报错,而是返回None,一般用这个
print(info.pop('stu03')) # jucy 删除,返回删除的值
# info.popitem() 随机删
# del info['stu01'] 删除方法,全局删除 # copy和list的一模一样
# 可多嵌套 print(info.items()) # 把字典转成列表。dict_items([('stu01', 'alex'), ('stu02', 'jack')])
info2 = {1: 2, 'stu02': [22, 1893113111, '男']}
info.update(info2) # 更新和list的extends类似,有对应的值就覆盖,没有对应的值就创建。
print(info) # {'stu01': 'alex', 'stu02': [22, 1893113111, '男'], 1: 2} info.setdefault(2, 'a') # 如果有2这个值就什么都不做,如果没有就把2的值写成'a'
print(info) # {'stu01': 'alex', 'stu02': [22, 1893113111, '男'], 1: 2, 2: 'a'} seq = ('Google', 'Runoob', 'Taobao')
dict = dict.fromkeys(seq)
print("新字典为 : %s" % str(dict)) # 字典为 : {'Google': None, 'Runoob': None, 'Taobao': None}
dict = dict.fromkeys(seq, 10)
print("新字典为 : %s" % str(dict)) # 新字典为 : {'Google': 10, 'Runoob': 10, 'Taobao': 10} # 打印出key和value
for k in info:
print(k, info[k]) # 下面这个方法不建议用,低效,需要把字典转换成列表,而字典的查询速度特别快
for k, v in info.items():
print(k, v)
最新文章
- JWS ,JAX-WS ,JAX-RS,REST,Restlet,SOAP 相关概念
- 1002. A+B for Polynomials
- CC3000 主机驱动API介绍
- A线段树
- nginx安装-源码编译
- js学习--DOM操作详解大全 前奏(认识DOM)
- OpenGL ES 2.0 绘制方式
- input的type属性引申的日历组件
- shell解析命令行的过程以及eval命令
- C语言的第 次作业总结
- #006 C语言大作业学生管理系统第三天
- Nginx代理实现内网主机访问公网服务
- 代码: CSS3动画,简单示例(鼠标移上去后,背景图片旋转)
- C#字符串长度判断
- Http请求帮助类
- jquery 实现iframe 自适应高度
- python_实现发送邮件功能
- linux和mac使用virtualenv使用和安装
- 基于jQuery的软键盘
- 算法笔记(c++)--c++中碰到的一些用法