1. 例子 ,务必理解

dic = {    'name':'金鑫',
'name_list':[1,2,3,'李杰'],
1:{
'python10':['小黑','萌哥'],
'老男孩':{'name':'oldboy','age':56}
}
}
#1,[1,2,3,'李杰']追加'wusir'
dic["name_list"].append("wusir")
print(dic) #2, ['小黑','萌哥'] 小黑 萌哥中间 插入一个花哥
dic[1]["python10"].insert(1,"花哥")
print(dic) #3, {'name':'oldboy','age':56} 添加一个键值对,hobby:男人 dic[1]["老男孩"]["hobby"]="男人"
print(dic)

2 字典的增删改操作

1. 增

dic={"name":孟宾 ,“age”:18,"sex":"male"}

dic【key】=vale

dic【“name2”】=“依米”

#字典里没有name2 的key,所以在最后添加“name2":"依米”

即 dic={"name":孟宾 ,“age”:18,"sex":"male",“name2":"依米”}

如果 dic【“name”】=“依米”  ,name 在dic字典里有这个key那么则替换

dic={"name":依米 ,“age”:18,"sex":"male"}

规则为 : 有key则覆盖,没有key则在后面添加.

dic["name"]="王子"
print(dic)
dic.setdefault("name1","dsfe")
dic.setdefault("name","mengbin")
print(dic)
输出结构为:

{'name': '王子', 'age': 18, 'sex': 'male'}
{'name': '王子', 'age': 18, 'sex': 'male', 'name1': 'dsfe'}

原则为:有key不变,没key 则添加.

2. 删除

rect=dic.pop("sex")
print(rect)
print(dic) 有返回值。
rect=dic.pop("name1","dfadsmeng")
print(rect)
结果:dfadsmeng
如果没有此name1 key ,则返回 值为dfadsmeng ②
del dic["name"]
print(dic)
结果:
{'age': 18, 'sex': 'male'} del dic
删除字典 ③
dic.popitem()
print(dic)
随机删除(最后开始删除)
输出结果为
{'name': 'jin', 'age': 18}
3更改  

dic【“key”】=value

dic2.update(dic)

dic ={"name":"jin","age":18,"sex":"male"}
dic2={"name":"alex","work":"计算机"}
dic2.update(dic)
print(dic2) 将dic的键值对覆盖增加到dic2 中 输出结果:
{'name': 'jin', 'work': '计算机', 'age': 18, 'sex': 'male'} 4 查
print(dic["name"])
print(dic["name"])
print(dic.get("name"))
print(dic.get("name1","没有此键值对")) #有返回值。
5 打印处字典里的Key或者Value或者键值对
dic={'name': 'jin', 'work': '计算机', 'age': 18, 'sex': 'male'}
keys= dic.keys()#打印字典中的key
print(key) k = list(key)#将所有key转换成列表
print(key,type(key))
print(k)
输出的结果:

dict_keys(['name', 'age', 'sex']) <class 'dict_keys'>
['name', 'age', 'sex']

②

dic={'name': 'jin', 'work': '计算机', 'age': 18, 'sex': 'male'}
values= dic.values()#打印字典中的value
print(values) k=list(values)#将所有value转换成列表
print(k)
结果:

dict_values(['jin', 18, 'male'])
['jin', 18, 'male']

 ③

将键值成对打印出来
dic ={"name":"jin","age":18,"sex":"male"}
items= dic.items()
print(items)
k=list(items)
print(k)
打印结果

dict_items([('name', 'jin'), ('age', 18), ('sex', 'male')])
[('name', 'jin'), ('age', 18), ('sex', 'male')]

6. For循环
dic ={"name":"jin","age":18,"sex":"male"}
for k in dic.keys() :#或者 for k in dic
print(k) for v in dic.values() :
print(v)
输出结果:

name
age
sex
jin

male

dic ={"name":"jin","age":18,"sex":"male"}
for i in dic.items():#以元祖形式打印出来
 print(i,type(i))
#
for k,v in dic.items():#以字符串形式打印出来
print(k,v,type(k))
打印结果为

('name', 'jin') <class 'tuple'>
('age', 18) <class 'tuple'>
('sex', 'male') <class 'tuple'>
name jin <class 'str'>
age 18 <class 'str'>
sex male <class 'str'>

 
 

Day 5 字典的操作的更多相关文章

  1. Python字典的操作与使用

    字典的描述 字典是一种key-value的数据类型,使用就像我们上学用的字典,通过拼音(key)来查对应字的详细内容(value). 字典的特性 1.字典是无序的(不像列表一样有下标,它通过key来获 ...

  2. python-类对象以字典模式操作

    #类对象以字典模式操作 class Person: def __init__(self): self.cache={} def __setitem__(self, key, value): #增加或修 ...

  3. Python—字典的操作

    字典的操作: #字典的本质其实是dict类的对象 >>> a = dict([(")]) >>> a {'} 一.增加 >>> stud ...

  4. Python基础学习----字典常用操作

    字典的常见操作: # 字典: # 格式:{键值对,键值对} dict_demo={"name":"bai-boy","age":17} # ...

  5. Dict字典的操作

    字典的操作 1.字典新增键值对 已存在内容的字典新增 alient_0 = {"color":"green",position:10} alient_0[&qu ...

  6. swift(三)字典数组操作

    //1.数组的概念和定义 var array = [,,,] var array1:Array = [,,,] var array2:Array<Int> = [,,,]; var arr ...

  7. python 深浅拷贝 元组 字典 集合操作

    深浅拷贝 :值拷贝 :ls = [,,] res = ls 则print(res)就是[,,] 浅拷贝 :ls.copy() 深拷贝:ls3 = deepcopy(ls) # 新开辟列表空间,ls列表 ...

  8. Python 字典(Dictionary)操作详解

    Python 字典(Dictionary)的详细操作方法. Python字典是另一种可变容器模型,且可存储任意类型对象,如字符串.数字.元组等其他容器模型. 一.创建字典 字典由键和对应值成对组成.字 ...

  9. Python字典增删操作技巧简述

    Python编程语言是一款比较容易学习的计算机通用型语言.对于初学者来说,首先需要掌握的就是其中的一些基础应用.比如今天我们为大家介绍的Python字典的相关操作,就是我们在学习过程中需要熟练掌握的技 ...

  10. !!Python字典增删操作技巧简述+Python字典嵌套字典与排序

    http://developer.51cto.com/art/201003/186006.htm Python编程语言是一款比较容易学习的计算机通用型语言.对于初学者来说,首先需要掌握的就是其中的一些 ...

随机推荐

  1. linux 下 php 安装 Gearman

    Gearman是一个分发任务的程序框架,它会对作业进行排队自动分配到一系列机器上.gearman跨语言跨平台,很方便的实现异步后台任务.   一个Gearman请求的处理过程涉及三个角色: Clien ...

  2. Spring框架整合Struts2框架的传统方法

    1. 导入CRM项目的UI页面,找到添加客户的页面,修改form表单,访问Action * 将menu.jsp中133行的新增客户的跳转地址改为:href="${pageContext.re ...

  3. Bioconductor简介

    Bioconductor简介 2012-10-09 ~ ADMIN 源:Bioconductor: open software development for computational biolog ...

  4. 数学整合 新(LUOGU)

    1.卡特兰数(P2532) 递推式:h(n)=C(2n,n)/(n+1) (n=0,1,2,...) 前十项(从零开始):1, 1, 2, 5, 14, 42, 132, 429, 1430, 486 ...

  5. eclipse缓存太重,新手最容易中招

    有4种方法,从上到下清理:

  6. part1:11-linux在线安装工具yum

    第三方的免费软件仓库安装包 1.Linux安装软件: rpm方式:rpm(Red Hat Package Manager)现在是Linux standard Base(LSB)中采用的包管理系统. 优 ...

  7. 原生js:click和onclick本质的区别

    原生javascript的click在w3c里边的阐述是DOM button对象,也是html DOM click() 方法,可模拟在按钮上的一次鼠标单击. button 对象代表 HTML 文档中的 ...

  8. 实现WIFI MAC认证与漫游

    前言 单位里有10来个网件的AP(WNAP210),需要对接入端(主要是手机)进行MAC认证,原来采用AP本地MAC认证,但是人员经常变动(离职),另外人员的岗位(流水线)也经常调整,这样就需在变动后 ...

  9. 判断PC机大小端

    判断PC机大小端 #include<stdio.h> #include<stdlib.h> int main() { short a = 0x0102; char *p = ( ...

  10. 怎么备份VMware虚拟磁盘文件或移植到其他虚拟机

    原文:http://jingyan.baidu.com/article/a681b0de17b3173b1843468f.html 方法/步骤     第一种方法:直接复制本地主机磁盘下的虚拟磁盘文件 ...