一、定义

什么是字典?

字典是一种数据类型,是一系列数据的组合。

每一个数据单元都分为key和value,key也称主键,具有唯一性,不可重复。value可以理解成是key对应的值。

 info={
1:"wo shi shei",
2:"sun wu kong",
"stu001":"alex",
"stu002":"zhangyang", }

如上,key可以是int型,也可以是字符型,value亦是。

二、字典数据的增删改查

1、查询(只能通过key来查询)

 print(info["stu001"])

查询此键值对应的数据

2、修改数据

info[1]="cbad"               #如果key值存在,则修改数据
info["stu005"]="qwe" #如果key值不存在,则创建数据

3.增添数据

用setdefault()方法,括号内第一个值为key,第二个是value

info.setdefault("stu001","ALEX")      #如果键值存在,不做修改
info.setdefault("stu006","dawang") #如果键值不存在,创建数据
info["stu005"]="qwe"    #如果key值不存在,则创建数据(不推荐此种添加数据的方法,不安全)

4.删除数据

必须写键值,只能用键值。

del info["stu005"]
info.pop("stu005")

三、其它的知识点

1.获取key是否存在的安全方法:

①get()方法

print(info.get("stu001"))

②大众方法

print("stu2001" in info)

不止字典,列表、集合都能用此方法。

2.将所有Key和value的值打印出来

keys()方法和values()方法

print(info.values()) #将所有value的值打印出来
print(info.keys()) #打印所有key的值

3.合并字典

update()方法

info.update(b)  #将两个字典合并,如果有相同的key,其value被覆盖成字典b的值

4.将字典转化成列表输出

print(info.items()) #将一个字典转化成一个列表,每个元素都是一个元组(仅本行有效,字典本身并不改变)

字典本身并没有改变

5.字典反转(将原来的kye和value互换)

 alphabet = {
"a":0,"b":1,"c":2,"d":3,"e":4,"f":5,"g":6,"h":7,"i":8,"j":9,"k":10,"l":11,"m":12,
"n":13,"o":14,"p":15,"q":16,"r":17,"s":18,"t":19,"u":20,"v":21,"w":22,"x":23,"y":24,"z":25,
} # 原字典
dict_new = {value:key for key,value in alphabet.items()} # 将字典反转 key和value互换
print(dict_new)
print(alphabet)

原字典alphabet不改变

四、嵌套字典及其循环

1.字典循环

for i in info:
print(i,info[i])

当中,i是key,info[i]是对应的value

2.嵌套字典

part={
"新疆":{
"北疆":“a”
"南疆":“b”
},
"河北":{
"石家庄":"c"
"保定":"d"
},
"湖南":{
"长沙市":"e"
"株洲市":"f"
},
}

3.嵌套字典的循环

for i in part:
print(i)
for j in part[i]:
print(j)

初学Python——字典的更多相关文章

  1. 初学python - 字典

    字符串转为字典 import astline=input()linedict=ast.literal_eval(line) 遍历字典 for key in linedict: value=linedi ...

  2. 初学Python(三)——字典

    初学Python(三)——字典 初学Python,主要整理一些学习到的知识点,这次是字典. #-*- coding:utf-8 -*- d = {1:"name",2:" ...

  3. 初学Python(九)——函数

    初学Python(九)--函数 初学Python,主要整理一些学习到的知识点,这次是函数. 函数定义: # -*- coding:utf-8 -*- #函数的定义 def my_function(x) ...

  4. 初学Python(八)——迭代

    初学Python(八)——迭代 初学Python,主要整理一些学习到的知识点,这次是迭代. # -*- coding:utf-8 -*- from collections import Iterabl ...

  5. 初学python之感悟

    python的强大有目共睹,现将初学python,觉得其中比较重要的知识罗列如下: 类似于数组的东西:列表.元组.集合.字符串以及字典,这几个东西充分体现了python的强大和逆天. 列表: x=[1 ...

  6. 初学Python常见异常错误,总有一处你会遇到!

    初学Python常见错误 忘记写冒号 误用= 错误 缩紧 变量没有定义 中英文输入法导致的错误 不同数据类型的拼接 索引位置问题 使用字典中不存在的键 忘了括号 漏传参数 缺失依赖库 使用了pytho ...

  7. 初学Python

    初学Python 1.Python初识 life is short you need python--龟叔名言 Python是一种简洁优美语法接近自然语言的一种全栈开发语言,由"龟叔&quo ...

  8. Python字典和集合

    Python字典操作与遍历: 1.http://www.cnblogs.com/rubylouvre/archive/2011/06/19/2084739.html 2.http://5iqiong. ...

  9. python 字典排序 关于sort()、reversed()、sorted()

    一.Python的排序 1.reversed() 这个很好理解,reversed英文意思就是:adj. 颠倒的:相反的:(判决等)撤销的 print list(reversed(['dream','a ...

随机推荐

  1. 2018-06-21 中文代码示例视频演示Python入门教程第五章 数据结构

    知乎原链 续前作: 中文代码示例视频演示Python入门教程第四章 控制流 对应在线文档: 5. Data Structures 这一章起初还是采取了尽量与原例程相近的汉化方式, 但有些语义较偏(如T ...

  2. Linux swappiness参数设置与内存交换

    swappiness参数设置与内存交换 by:授客 QQ:1033553122 简介 swappiness,Linux内核参数,控制换出运行时内存的相对权重.swappiness参数值可设置范围在0到 ...

  3. ScrollView嵌套ListView、GridView,进入页面显示的位置并不是在最顶部,而是在中间部分问题

    在Android项目的开发中,经常会遇到一些布局,可能需要在ScrollView中嵌套ListView或.GridView来实现, 是在使用的过程总又遇到了一个新的问题,就是如果在ScrollView ...

  4. MFC 单文档添加按钮

    VS 单文档 添加按钮 今天做项目需要在单文档中创建按钮来响应函数,即点击按钮,调用某函数,特此记录. 1. 在XXXView中添加CButton变量,例如 CButton start; 2. 下来就 ...

  5. Android 7.0 fiddler代理抓不到https请求的解决办法

    解决方法:  1.在源码res目录下新建xml目录,增加network_security_config.xml文件 (工程名/app/src/main/res/xml/network_security ...

  6. JavaScript中的原型链和继承

    理解原型链 在 JavaScript 的世界中,函数是一等公民. 上面这句话在很多地方都看到过.用我自己的话来理解就是:函数既当爹又当妈."当爹"是因为我们用函数去处理各种&quo ...

  7. github仓库本地创建上传远程仓库

    1.现在githubu创建自己心意的仓库. 2.然后再本地创建文件夹 echo"#  (远程仓库的名字) >>README.md git add README.md git co ...

  8. 简易付XP版本无法获取server.xml配置文件处理方案

    博客地址:https://blog.csdn.net/zdw_wym/article/details/40892535 把它添加到C:/WINDOWS/Microsoft.NET/Framework/ ...

  9. SQL Server OPTION (OPTIMIZE FOR UNKNOWN) 测试总结

      关于SQL Server的查询提示OPTION (OPTIMIZE FOR UNKNOWN) ,它是解决参数嗅探的方法之一. 而且对应的SQL语句会缓存,不用每次都重编译.关键在于它的执行计划的准 ...

  10. ORACLE中Scalar subquery Caching的hash table大小测试浅析

      前阵子总结了这篇"ORACLE当中自定义函数性优化浅析"博客,里面介绍了标量子查询缓存(scalar subquery caching),如果使用标量子查询缓存,ORACLE会 ...