1.字典

列表存储的数据比较单一也不够灵活,这时我们可以使用字典来存储某些多内容的数据,字典是无顺序的

1.简单的字典
book={
'huqiang':13457412571,
'Jasper':110110110111,
'despereado':784137611
}
输出结果:
{'Jasper': 110110110111, 'huqiang': 13457412571, 'despereado': 784137611}
2.字典里嵌套字典

book_list={
430424199103057689:{#字典里再加字典
'name':"huqiang",#name是key,huqiang是value
'age':"",
'addr':"hunan"
},
4304241991030571689: {
'name': "huqiang",
'age': "",
'addr': "hunan"
},
430424198903057689: {
'name': "huqiang2",
'age': "",
'addr': "hunan1"
}
}
print(book_list)
#字典是key-value对应,自动去重,比列表存储信息更灵活
输出结果:

{430424199103057689: {'age': '23', 'name': 'huqiang', 'addr': 'hunan'}, 4304241991030571689: {'age': '23', 'name': 'huqiang', 'addr': 'hunan'}, 430424198903057689: {'age': '231', 'name': 'huqiang2', 'addr': 'hunan1'}}

 

3.取key对应的value值

print(book_list[430424199103057689])
输出结果:
{'addr': 'hunan', 'age': '23', 'name': 'huqiang'} 4.修改value值
book_list[430424199103057689]['name']="abc"
print(book_list[430424199103057
)
输出结果:
{'age': '23', 'addr': 'hunan', 'name': 'abc'}
#提示:修改key值对应的value值,当key值不存在时会自动创建该值
book_list[430424199103057689]['email']="408473944@qq.com"
print(book_list[430424199103057689])
输出结果:
{'email': '408473944@qq.com', 'addr': 'hunan', 'name': 'abc', 'age': '23'}
5.删除字典
del book_list[430424199103057689]['age']   #key值后不指定删除名称则删除整个字典列
print(book_list[430424199103057689])
输出结果:
{'name': 'abc', 'email': '408473944@qq.com', 'addr': 'hunan'}
6.获取字典key值
v=book_list.get(430424199103057689110) #这个key值不存在
print(v)
#Get获取值,存在 则显示,不存在则None
输出结果:
None
7.更新字典
定义一个新字典book_list2
book_list2={
430424199103057689: {
'name': "111111111111", #name对应的值修改为111111111111,其它值保持不变,原字典结构必须保持,不然会全部修改为新的字典
'age': "23",
'addr': "hunan"
}
}
book_list.update(book_list2)
print(book_list[430424199103057689])
输出结果:
{'addr': 'hunan', 'age': '23', 'name': '111111111111'} 8.输出Key和value值
print(book_list.keys())
#打印字典所有key
print(book_list.values())
#打印字典所有value
9.字典应用for循环
循环字典里的key值
for key in book_list:
print(key)
输出结果:

430424199103057689
4304241991030571689
430424198903057689

循环字典的value值
for key in book_list:
print(book_list[key])
输出结果:

{'name': '111111111111', 'addr': 'hunan', 'age': '23'}
{'name': 'huqiang', 'addr': 'hunan', 'age': '23'}
{'name': 'huqiang2', 'addr': 'hunan1', 'age': '231'}

循环字典里的key对应的value值

for key in book_list:
print(key,book_list[key])
输出结果:

430424199103057689 {'name': '111111111111', 'age': '23', 'addr': 'hunan'}
4304241991030571689 {'name': 'huqiang', 'age': '23', 'addr': 'hunan'}
430424198903057689 {'name': 'huqiang2', 'age': '231', 'addr': 'hunan1'}

 

python学习之字典的更多相关文章

  1. Python学习笔记(字典)

    今天学习一个python中的基本类型--字典(dictionary) 字典这种数据结构有点像我们平常用的通讯录,有一个名字和这个名字对应的信息.在字典中,名字叫做“键”,对应的内容信息叫做“值”.字典 ...

  2. python学习09——字典(3)

    今天写了一道python字典题目,用了上次字典(2)中的方法,代码如下: json = {', 'IP':'10.0.0.1'} def find_value(themap, word): if wo ...

  3. Python学习07——字典(2)

    笨办法学Python第40节,上次用的第三版的书,这次是第四版的书. 这一节的代码如下: cities = {'CA':'San Francisco', 'MI':'Detroit', 'FL':'J ...

  4. python学习05——字典

    笨办法学python第39节 这节主要讲解的是字典,首先字典和列表的两个区别是: 1. 列表中可以通过数字找到列表中的元素,是数字作为索引的:字典中可以通过任何东西找到想要的元素,即字典可以将一个物件 ...

  5. Python学习笔记-字典

    字典是python中唯一内建的映射类型. 创建字典phonebook = {'Alice':'2341','Beth':'9102'} 可以使用dict通过其他映射或者键值对的序列建立字典.关键值参数 ...

  6. Python学习之字典详解

    在元组和列表中,都是通过编号进行元素的访问,但有的时候我们按名字进行数据甚至数据结构的访问,在c++中有map的概念,也就是映射,在python中也提供了内置的映射类型--字典.映射其实就是一组key ...

  7. python学习:字典排序

    按字典值排序   按照字典value排序,类似sort -k 命令   import operator x= {1:2,3:4,4:3,2:1,0:0} sorted_x = sorted(x.ite ...

  8. python学习之字典(Dictionary)练习

    Python字典是另一种可变容器模型,且可存储任意类型对象,如字符串.数字.元组等其他容器模型 字典中分为键值对 , key 类型需要时被哈希. value 类型可以是 字符串.数字.元组等其他容器模 ...

  9. python 学习分享-字典篇

    python字典(Dictionary) dict是无序的 key必须是唯一切不可变的 a={'key1':'value1','key2':'value2'} 字典的增删改查 a['key3']='v ...

  10. python学习10字典

    '''''''''字典(Dict)是python语言的一个最大的特征1.定义:是可变的无序集合,以键值对为基本元素,可以存储各种数据类型2.表示:{} 列表:[] 元组 () 字符串 ‘’ “” ‘‘ ...

随机推荐

  1. Centos上Docker 使用dockerfile构建容器实现ssh

    这几日在学习docker.遇到的问题数一年都数不完,网上大多数都是ubuntu的,百度或者谷歌的时候心好累.写写文档来帮助使用centos的docker爱好者们. docker基本操作这里就不介绍了 ...

  2. smarty 入门2(个人总结)

    1.下载安装: 2.拷贝libs文件夹到web文件夹: 3.引入smarty类文件   // include './libs/Smarty.class.php'; 4.配置smarty      // ...

  3. php课程---练习(发布新闻)

    做一个发布新闻的页面,实现发布新闻,查看新闻,修改新闻与删除等功能 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional/ ...

  4. IOS第12天(1,UIViewController控制器的创建的 三种方式,和第一个view创建)

    *************HMAppDelegate.m中 @implementation HMAppDelegate - (BOOL)application:(UIApplication *)app ...

  5. setInterval对某个数值加加渐减

    decrease_time = setInterval(decrease_opacity_val,10); function decrease_opacity_val(){ showID.style. ...

  6. 如何使用Jquery自定义命名空间namespace

    // 把生成命名空间的方法绑定在jQuery上 jQuery.namespace = function () { var a = arguments, o = null, i, j, d; for ( ...

  7. log4j.properties 配置的学习整理

    参考资料: log4j.properties:用来做什么的(日志) Log4j:由2部分组成 :loggers(记录器)            ----日志的类别 appender(输出源)     ...

  8. ExtJs 使用点滴 十三 在FormPanel 嵌入按钮

    Ext.onReady(function () { //初始化标签中的Ext:Qtip属性. Ext.QuickTips.init(); Ext.form.Field.prototype.msgTar ...

  9. 两种方法解决tomcat的 Failed to initialize end point associated with ProtocolHandler ["http-apr-8080"]

    出现这种原因主要是8080端口被占用了. 解决1: 打开任务管理器看看里面有没有javaw的线程,把它关了再重新启动tomcat看看. 解决2: 修改tomcat /conf /server.xml ...

  10. kafka 安装

    kafka是一个分布式的消息缓存系统 kafka集群中的服务器都叫做broker kafka有两类客户端,一类叫producer(消息生产者),一类叫做consumer(消息消费者),客户端和brok ...