python课堂_python课堂整理6---字典
一、字典 dict
info = {"k1" : "v1", "k2" : "v2"}
以键值对形式组成字典
字典里的value可以是任何值
列表不能作为字典的key
字典可以作为字典的key
元组可以作为字典的key
布尔值可以作为字典的key 但是重复的key只会显示一个,True容易和数字1重复,需注意!
字典是无序的
字典支持索引取值,但不支持切片
info = {
"k1": 18,
2 : True,
"k3": [
"li",
[],
(),
22,
33,
{
"kk1": "vv1", "kk2": "vv2", "kk3": (11, 22)
}
],
"k4": (11, 22, 33, 44)
}
v = info["k1"]
print(v)
info = {
"k1": 18,
2 : True,
"k3": [
"li",
[],
(),
22,
33,
{
"kk1": "vv1", "kk2": "vv2", "kk3": (11, 22)
}
],
"k4": (11, 22, 33, 44)
}
v = info["k3"][5]["kk3"][0]
print(v)
注意:通过索引key值去找value的话,如果该key不存在,会报错。
支持del删除
del info['k1']
支持for 循环
1.输出所有keys
info = {"k1": "v1", "k2": "v2"}
for item in info.keys():
print(item)
2.输出所有values值
info = {"k1": "v1", "k2": "v2"}
for item in info.values():
print(item)
3. 同时输出keys和values:
info = {"k1": "v1", "k2": "v2"}
for item in info.keys():
print(item, info[item])
或(这个更重要)items 方法
info = {"k1": "v1", "k2": "v2"}
for k, v in info.items():
print(k, v)
二、字典的魔法
1. 该方法和前面相同不再赘述:clear copy (浅拷贝)
2. 根据序列(可以是列表、元组、字符串等),创建字典,并指定统一的值
v = dict.fromkeys(["k1", 123, "999"], "爱你")
print(v)
3. get方法,如果传入的key不存在,默认返回None,也可以指定返回值
dic = {"k1": "v1"}
v = dic.get("k1")
v2 = dic.get("大白", "不存在")
print(v, v2)
4. pop删除,当要删除的key不存在时,返回指定内容
dic = {"k1": "v1",
"k2": "v2"
}
v1 = dic.pop("k1")
v2 = dic.pop("k3", "不存在哦亲")
print(dic)
print(v1)
print(v2)
5. 随机删除一个,返回被删除的键和值
dic = {"k1": "v1",
"k2": "v2"
}
v = dic.popitem()
print(dic, v)
或
dic = {"k1": "v1",
"k2": "v2"
}
k, v = dic.popitem()
print(dic, k, v)
6.设置值,如果已经存在,不设置,获取当前key对应的值
如果不存在,设置,获取当前key对应的值
dic = {"k1": "v1",
"k2": "v2"
}
v = dic.setdefault("大白", "123")
v2 = dic.setdefault("k1", "11111111")
print(dic, v)
print(dic, v2)
7. 更新字典
dic = {"k1": "v1",
"k2": "v2"
}
dic.update({"k1": "11111", "k3": "liu"})
print(dic)
或者
dic = {"k1": "v1",
"k2": "v2"
}
dic.update(k1=123, k3 = 345)
print(dic)
重要:keys() values() items() get update
补充:
in dic 默认找的是key
in dic.values() 能找到values
dic = {"k1": "v1",
"k2": "v2"
}
v = "k1" in dic
v2 = "v1" in dic.values()
print(v)
print(v2)
布尔值:在内存中就表现为0和1
转换:bool(...)
以下情况为假:None "" () [] {} 0 ====>False
python课堂_python课堂整理6---字典相关推荐
- python干货_Python干货整理,从入门说起(7.4)
先引用一篇关于"神奇Python"的相关介绍的文章来热热身,引用文章:Python 有那么神吗? Python的确挺神的~但不是生来就那么神.Python是在1991年被创造出来的 ...
- python编程入门与案例详解-Python程序设计案例课堂
Python程序设计案例课堂 第Ⅰ篇 基础知识 1 揭开Python神秘面纱 1.1 什么是Python 1.2 Python的优点和特性 1.2.1 Python的优点 1.2.2 Python的特 ...
- python加入中小学课程_【python即将进入中学课堂,编程从小抓起,竟然在这几点上应验了】- 环球网校...
[摘要]我们都知道,不论是我们使用的app,还是各种各样的游戏,小程序,都离不开编程软件的贡献,其中python占据了半壁江山,随着大家对python的重视,python即将进入中学课堂,这究竟是好是 ...
- 计算机毕业设计Python+uniapp学生课堂考勤小程序(小程序+源码+LW)
计算机毕业设计Python+uniapp学生课堂考勤小程序(小程序+源码+LW) 该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行 环境配置: Pychram社区版+ pyth ...
- 电分、模电、数电总复习之爱课堂题目概念整理
本文模电数电部分转载自博客园_模电数电爱课堂概念题整理 模电.数电总复习之爱课堂题目概念整理 电分总复习之爱课堂题目概念整理(原创)(不定期更新) 模电总复习之爱课堂题目概念整理 Chapter 1 ...
- Python毕设-【课堂人脸签到系统】附源码课件/Python练手项目/Python毕业设计
Python毕设-[课堂人脸签到系统]附源码课件/允许白嫖 文章目录 Python毕设-[课堂人脸签到系统]附源码课件/允许白嫖 系统简介 一.本课题拟解决的问题 二.系统技术栈 三.开发工具 四.数 ...
- python字典高级用法_Python 进阶编程之字典的高级用法
一. collections 中 defaultdict 的使用 1.1 字典的键映射多个值 将下面的列表转成字典 l = [('a',2),('b',3),('a',1),('b',4),('a', ...
- python 列表解析式_python列表解析式,字典解析式,集合解析式和生成器
一.列表解析式(列表推倒式): 功能:是提供一种方便的列表创建方法,所以,列表解析式返回的是一个列表. 1 lst = [1, 3, 5, 8, 10] 2 ll = [x+x for x in ls ...
- 怎么读懂python语句_Python入门基础知识点总结,一点文章就能让你看懂Python
Python标识符 在 Python 里,标识符由字母.数字.下划线组成. 在 Python 中,所有标识符可以包括英文.数字以及下划线(_),但不能以数字开头. Python 中的标识符是区分大小写 ...
最新文章
- 站在巨人的肩膀上,Adrian与dlib中face_recongnition模块的贡献者Adam的采访部分翻译
- P1051 谁拿了最多奖学金
- 20 个 jQuery 超酷视觉效果构建教程推荐
- 如何关掉mysql服务呢
- 业界真的需要水下数据中心?微软的确认为如此
- bios模拟器_比游戏模拟器罕见一百倍!99%的人没见过!真实用!
- python3协程 queue_使用gevent库+queue模块实现多协程爬虫,提高爬取效率!
- 首次落地中国大陆的OpenInfra:中国对于开源做出的贡献力量已不可忽视
- Nginx重启时丢失nginx.pid文件
- webstorm 主题导入方法
- 解决“error C1083: 无法打开包括文件: “HPSocket.h”: No such file or directory”
- 万字长文解析Redis数据倾斜与JD开源hotkey源码分析
- 陪着时光,走过羊肠阡陌
- 苹果风格ui设计_重新设计苹果音乐应用程序ui ux案例研究
- pic16多路adc采样
- Python获取秒级时间戳与毫秒级时间戳
- Android连连看设计思路,0049 JavaScript游戏连连看设计和编程思路
- 李宁——一切皆有可能
- C#SerialPort详细用法
- 动手实现简易网站目录扫描器(桌面窗口版)——WebScannerTkl
热门文章
- matlab 图像的膨胀indilate和腐蚀imerode
- ssh集群服务器免密登录
- matlab2c使用c++实现matlab函数系列教程-rot90函数
- matlab2c使用c++实现matlab函数系列教程-compan函数
- 查看Ubuntu内核和版本的两条命令以及LTS的含义
- Python基础__函数
- 数字个数依次叠加 s=a+aa+aaa+aaaa+aa...a
- WIN8系统中 任务管理器 性能栏 显示CPU利用率(已暂停)怎么回事?
- css3圆形修边按钮
- C++ 类的静态成员详细讲解(转)