python全栈开发从入门到放弃之字典的应用
1、存值
info_dic={'name':'egon','age':18,'sex':'male'}
info_dic['job']='IT' #根据key来存值
print(info_dic)
输出结果:
{'name': 'egon', 'age': 18, 'sex': 'male', 'job': 'IT'}
2、取值
1 info_dic={'name':'egon','age':18,'sex':'male'}
2 print(info_dic['name']) #根据Key来取值
3
4
5 输出结果:
6 egon
#如果没有在字典中没有你要找的key则会报错
info_dic={'name':'egon','age':18,'sex':'male'}
print(info_dic['name11111111'])
#get找不到要找的key值不会报错,会返回默认值None
get()
info_dic={'name':'egon','age':18,'sex':'male'}
print(info_dic.get('name11'))
None
3、pop
info_dic={'name':'egon','age':18,'sex':'male'}
print(info_dic.pop('name111',None)) #不是单纯的删除,可以看到返回的值,如果没key存在则返回值,没有存在则返回默认值None
输出结果:
None
4、popitem()
info_dic={'name':'egon','age':18,'sex':'male'}
print(info_dic.popitem()) #默认从后往前的删除取值,但不是单纯的删除有返回值
print(info_dic)
输出结果:
('sex', 'male')
{'name': 'egon', 'age': 18}
5、keys
info_dic={'name':'egon','age':18,'sex':'male'}
print(info_dic.keys()) #取字典的所有key
输出结果:
dict_keys(['name', 'age', 'sex'])
6、values
info_dic={'name':'egon','age':18,'sex':'male'}
print(info_dic.values()) #取字典的所有value值
输出结果:
dict_values(['egon', 18, 'male'])
7、键值对 items()
info_dic={'name':'egon','age':18,'sex':'male'}
print(info_dic.items()) #键值对,取字典的键值对
输出结果:
dict_items([('name', 'egon'), ('age', 18), ('sex', 'male')])
应用场景:
# print('========>')
# for k in info_dic.keys():
# print(k)
# for val in info_dic.values():
# print(val)
# for k,v in info_dic.items(): #k,v=('name', 'egon')
# print(k,v)
8、长度 len
info_dic={'name':'egon','age':18,'sex':'male'}
print(len(info_dic))
输出结果:
3
9、包含in
#查看是否包含key、value、键值对有则返回True,没有则返回False
info_dic={'name':'egon','age':18,'sex':'male'}
print('name' in info_dic)
print('name' in info_dic.keys())
print('egon' in info_dic.values())
print(('name','egon') in info_dic.items()) 输出结果:
True
True
True
True
10、updata
info_dic={'name':'egon','age':18,'sex':'male'}
info_dic.update({'a':1,'name':'Egon'}) #对字典进行更新没有则往后添加,有的话则更改value是否改变,改变了则更新
print(info_dic)
输出结果:
{'name': 'Egon', 'age': 18, 'sex': 'male', 'a': 1}
11、
python全栈开发从入门到放弃之字典的应用的更多相关文章
- python全栈开发从入门到放弃之迭代器生成器
1.python中的for循环 l = [1,2,3,4,5,6] for i in l: #根据索引取值 print(i) 输出结果: 1 2 3 4 5 6 2.iterable 可迭代的 可迭 ...
- python全栈开发从入门到放弃之socket网络编程基础
网络编程基础 一 客户端/服务器架构 1.硬件C/S架构(打印机) 2.软件C/S架构 互联网中处处是C/S架构 如黄色网站是服务端,你的浏览器是客户端(B/S架构也是C/S架构的一种) 腾讯作为服务 ...
- python全栈开发从入门到放弃之递归函数的调用
1.递归效率低,需要在进入下一次递归时保留当前的状态,见51cto博客 解决方法是尾递归,即在函数的最后一步(而非最后一行)调用自动但是python又没有尾递归,且对递归层级做了限制 必须有一个明确的 ...
- python全栈开发从入门到放弃之初识面向对象
面向过程 VS 面向对象 面向过程的程序设计的核心是过程(流水线式思维),过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西. 优点是:极大的降低了写程序的复 ...
- python全栈开发从入门到放弃之面向对象的三大特性
组合 class Course: def __init__(self,name,period,price): self.name = name self.period = period self.pr ...
- python全栈开发从入门到放弃之socket并发编程多进程
1.1 multiprocessing模块介绍 python中的多线程无法利用多核优势,如果想要充分地使用多核CPU的资源(os.cpu_count()查看),在python中大部分情况需要使用多进程 ...
- python全栈开发从入门到放弃之socket并发编程多线程
一 threading模块介绍 multiprocess模块的完全模仿了threading模块的接口,二者在使用层面,有很大的相似性,因而不再详细介绍 二 开启线程的两种方式 from threadi ...
- python全栈开发从入门到放弃之socket并发编程之协程
一.为什么会有协程 本节的主题是基于单线程来实现并发,即只用一个主线程(很明显可利用的cpu只有一个)情况下实现并发,为此我们需要先回顾下并发的本质:切换+保存状态 cpu正在运行一个任务,会在两种情 ...
- python全栈开发从入门到放弃之网络基础
一.操作系统基础 操作系统:(Operating System,简称OS)是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才 ...
随机推荐
- android viewpager嵌套使用photoview异常问题
最近,做项目时,遇到一个需求,需要像淘宝评论那样,一组图点开,然后可以双指滑动放大,并左右切换换图的功能.自然就想到了使用viewpager+photoview来实现这一功能,但是在实现后,却发现一个 ...
- C#连接各种数据库的方法(文档)
1.C#连接连接Access程序代码: ------------------------------------------------------------------------------- ...
- markDownPad Key
邮箱: Soar360@live.com 授权秘钥: GBPduHjWfJU1mZqcPM3BikjYKF6xKhlKIys3i1MU2eJHqWGImDHzWdD6xhMNLGVpbP2M5SN6b ...
- double类型转化成string
public static void main(String[] args) { double priceWithFreight = 1200.5698d; System.out.println(pr ...
- 笔记:C语言图形基本函数及实例五子棋游戏
初始化图形界面 int gdriver; int gmode; gdriver = DETECT; initgraph(&gdriver,&gmode,"" ); ...
- 使用 Visual Studio 2015 编译 QT 工程
简单进行一下几步就可以了 1.下载源代码 qt-everywhere-opensource-src-5.6.0-alpha.7z .解压到 D:\ToolKits\5.6.0\src 目录下2.网站 ...
- 解决finalflares 安装成功后无法显示问题
按照网上的安装方法:http://blog.sina.com.cn/s/blog_e9370eb80101gias.html 安装插件并破解,安装过程没有任何错误,但是打开max2012始终看不到这个 ...
- 学习-go语言坑之for range
引用自 http://studygolang.com/articles/9701 go只提供了一种循环方式,即for循环,在使用时可以像c那样使用,也可以通过for range方式遍历容器类型如数组. ...
- A1231. Crash的数字表格(贾志鹏)
A1231. Crash的数字表格(贾志鹏) 时间限制:2.0s 内存限制:512.0MB 总提交次数:410 AC次数:154 平均分:63.93 将本题分享到: ...
- PAT 甲级 1019 General Palindromic Number(简单题)
1019. General Palindromic Number (20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN ...