Python语言学习:字典常用的方法
1. 增加:字典[key]=value(不存在的key和value)
info={
'stu1101':'TengLan',
'stu1102':'LuoZe',
'stu1103':'XiaoZe'
} info['stu1104']='crystal'
print(info) #输出结果:{'stu1101': 'TengLan', 'stu1102': 'LuoZe', 'stu1103': 'XiaoZe', 'stu1104': 'crystal'}
2. 修改:字典[key]=value(已存在的key,修改对应value)
info={
'stu1101':'TengLan',
'stu1102':'LuoZe',
'stu1103':'XiaoZe'
} info['stu1101']='crystal'
print(info) #输出结果:{'stu1101': 'crystal', 'stu1102': 'LuoZe', 'stu1103': 'XiaoZe'}
3. 删除
a. 字典.pop(key)
info={
'stu1101':'TengLan',
'stu1102':'LuoZe',
'stu1103':'XiaoZe'
} info.pop("stu1101")
print(info) #{'stu1102': 'LuoZe', 'stu1103': 'XiaoZe'}
b. del 字典[key]
info={
'stu1101':'TengLan',
'stu1102':'LuoZe',
'stu1103':'XiaoZe'
} del info['stu1101']
print(info)
4. 查找
a. in:如果key存在,返回true;反之返回false
info={
'stu1101':'TengLan',
'stu1102':'LuoZe',
'stu1103':'XiaoZe'
} print("stu1101" in info) #输出结果:True
b.get:通过key获取到value,如果不存在返回None
info={
'stu1101':'TengLan',
'stu1102':'LuoZe',
'stu1103':'XiaoZe'
} print(info.get("stu1101")) #输出结果:TengLan
c. 字典[key]:如果key存在,返回value;反之则报错
info={
'stu1101':'TengLan',
'stu1102':'LuoZe',
'stu1103':'XiaoZe'
} print(info["stu1104"]) #输出结果:KeyError: 'stu1104'
5. 多级字典嵌套操作
av_catalog = {
"Europe":{
"Germany":["地域广","文化浓郁"],
"United Kingdom":["历史古国","高校多"],
"Italy":["异域风情","人美"],
"Belgium":["时装","文化"]
},
"Japan":{
"tokyo":["美食","旅游"]
},
"China":{
"Beijing":["国都","历史悠久"]
}
}
av_catalog["China"]["Beijing"][1]="文明之源"
print(av_catalog) #输出结果:{'Europe': {'Germany': ['地域广', '文化浓郁'], 'United Kingdom': ['历史古国', '高校多'], 'Italy': ['异域风情', '人美'], 'Belgium': ['时装', '文化']}, 'Japan': {'tokyo': ['美食', '旅游']}, 'China': {'Beijing': ['国都', '文明之源']}}
6. setdefault :创建新的key-value
av_catalog = {
"Europe":{
"Germany":["地域广","文化浓郁"],
"United Kingdom":["历史古国","高校多"],
"Italy":["异域风情","人美"],
"Belgium":["时装","文化"]
},
"Japan":{
"tokyo":["美食","旅游"]
},
"China":{
"Beijing":["国都","历史悠久"]
}
}
av_catalog.setdefault("Taiwan",{"travel":[1,2]})
print(av_catalog) #输出结果:{'Europe': {'Germany': ['地域广', '文化浓郁'], 'United Kingdom': ['历史古国', '高校多'], 'Italy': ['异域风情', '人美'], 'Belgium': ['时装', '文化']}, 'Japan': {'tokyo': ['美食', '旅游']}, 'China': {'Beijing': ['国都', '历史悠久']}, 'Taiwan': {'travel': [1, 2]}}
7. update:两个字典合并,有交叉合并,如没有交叉就更新
info={
'stu1101':'TengLan',
'stu1102':'LuoZe',
'stu1103':'XiaoZe'
}
b = {
'stu1101':"crystal",
1:3,
2:5
}
info.update(b)
print(info) #输出结果:{'stu1101': 'crystal', 'stu1102': 'LuoZe', 'stu1103': 'XiaoZe', 1: 3, 2: 5}
8. fromkeys:初始化一个新的字典
info={
'stu1101':'TengLan',
'stu1102':'LuoZe',
'stu1103':'XiaoZe'
}
b = {
'stu1101':"crystal",
1:3,
2:5
}
c = info.fromkeys([6,7,8],"test")
print(c) #输出结果:{6: 'test', 7: 'test', 8: 'test'}
9. items:把字典转换成列表
info={
'stu1101':'TengLan',
'stu1102':'LuoZe',
'stu1103':'XiaoZe'
}
print(info.items()) #输出结果:dict_items([('stu1101', 'TengLan'), ('stu1102', 'LuoZe'), ('stu1103', 'XiaoZe')])
10. 字典循环
info={
'stu1101':'TengLan',
'stu1102':'LuoZe',
'stu1103':'XiaoZe'
}
for i in info: #此方式循环高效
print(i,info[i]) for k,v in info.items(): #此方式不适合数据量较大的情况
print(k,v) #输出结果:
stu1101 TengLan
stu1102 LuoZe
stu1103 XiaoZe
stu1101 TengLan
stu1102 LuoZe
stu1103 XiaoZe
Python语言学习:字典常用的方法的更多相关文章
- Python学习入门基础教程(learning Python)--8.3 字典常用的方法函数介绍
本节的主要讨论内容是有关dict字典的一些常用的方法函数的使用和范例展示. 1. clear清除字典数据 语法结构如下: dict_obj.clear() 示例代码如下: dict1 = {'web' ...
- Python基础学习----字典常用操作
字典的常见操作: # 字典: # 格式:{键值对,键值对} dict_demo={"name":"bai-boy","age":17} # ...
- Python - 基本数据类型及其常用的方法之字典和布尔值
字典 特点:{"key1": value1, "key2":value2} , 键值对中的值可以为任何数据类型,键不能为列表.字典(无法哈希),布尔值可以为键 ...
- Python - 基本数据类型及其常用的方法之元组
元组 特点:一级元素无法被修改,且不能被增加或者删除. 基本操作: tu = (11, 22, ["aiden", 33, ("qwe", 11)], 77) ...
- Python语言学习:字符串常用的方法
python字符串常用的方法 1. find( ):在字符串中搜索指定的值并返回它被找到的位置,如果没有找到,则返回-1 string.find(value,start,end) #value:必需, ...
- Python语言学习:列表常用的方法
python 列表常用的方法 1.append( ):用于在列表末尾添加新的对象 list.appent(obj) #obj:添加到列表末尾的对象 #!/usr/bin/python aList = ...
- Python学习之==>常用字符串方法
1.常用字符串方法 a = '\n 字 符 串 \n\n' b = a.strip() # 默认去掉字符串两边的空格和换行符 c = a.lstrip() # 默认去掉字符串左边的空格和换行符 d = ...
- python语言学习
前段时间要做视频直播需要编写自动模块,就考虑使用python脚本语言,python的好多语法都是很独特的,比如数据类型不需要预定义,缩进的方式等,另外功能也很强大,豆瓣就是用python写的.我写的部 ...
- Python语言学习之C++调用python
C++调用python 在C/C++中嵌入Python,可以使用Python提供的强大功能,通过嵌入Python可以替代动态链接库形式的接口,这样可以方便地根据需要修改脚本代码,而不用重新编译链接二进 ...
- Python语言学习之Python入门到进阶
人们常说Python语言简单,编写简单程序时好像也确实如此.但实际上Python绝不简单,它也是一种很复杂的语言,其功能特征非常丰富,能支持多种编程风格,在几乎所有方面都能深度定制.要想用好Pytho ...
随机推荐
- mysql第五篇 : MySQL 之 视图、触发器、存储过程、函数、事物与数据库锁
第五篇 : MySQL 之 视图.触发器.存储过程.函数.事物与数据库锁 一.视图 视图是一个虚拟表(非真实存在的),其本质是‘根据SQL语句获取动态的数据集,并为其命名‘ ,用户使用时只需使用“名称 ...
- 第十五篇 用户认证auth
用户认证auth 阅读目录(Content) 用户认证 auth模块 1 .authenticate() 2 .login(HttpRequest, user) 3 .logout(request) ...
- python_@propetry
@propetry的作用就是让一个方法可以当成属性被调用. @property的实现比较复杂,我们先考察如何使用.把一个getter方法变成属性,只需要加上@property就可以了,此时,@prop ...
- 2019山东ACM省赛L题题解(FLOYD传递闭包的变形)
本题地址 https://cn.vjudge.net/contest/302014#problem/L Median Time Limit: 1 Second Memory Limit: 6 ...
- 【LeetCode】克隆图
[问题]给定无向连通图中一个节点的引用,返回该图的深拷贝(克隆).图中的每个节点都包含它的值 val(Int) 和其邻居的列表(list[Node]). 解释: 节点 的值是 ,它有两个邻居:节点 和 ...
- JVM探秘:MAT分析内存溢出
本系列笔记主要基于<深入理解Java虚拟机:JVM高级特性与最佳实践 第2版>,是这本书的读书笔记. MAT是分析Java堆内存的一个工具,全称是 The Eclipse Memory A ...
- 全面掌握Nginx配置+快速搭建高可用架构 一 Nginx的访问控制
语法 示例 allow 127.0.0.1; deny all; 缺点:局限性 如果通过代理就可以绕过访问限制,限制不准确 解决 1. http_x_forwarded_for 2. 结合geo模块作 ...
- eclipse导入maven工程,右键没有build path和工程不能自动编译解决方法
原文链接:https://blog.csdn.net/wusunshine/article/details/52506389 eclipse导入maven工程,右键没有build path解决方法: ...
- 【数据结构】二叉树的遍历(前、中、后序及层次遍历)及leetcode107题python实现
文章目录 二叉树及遍历 二叉树概念 二叉树的遍历及python实现 二叉树的遍历 python实现 leetcode107题python实现 题目描述 python实现 二叉树及遍历 二叉树概念 二叉 ...
- maven的理解和使用
一.maven是什么? maven是项目管理工具 二.maven为什么要用? 在做开发的时候常常会用到外部的工具包(jar包),这就需要你一个一个的去他们的官网下工具包,然后在项目里依赖他们,比较的麻 ...