字典是无序可变序列。

定义字典是,每个元素的键和值用冒号分隔,元素之间用逗号分隔,所有的元素放在一对大括号“{ }”中。

字典中的键可以为任意不可变数据,比如、整数、实数、复数、字符串、元组等等。键值不能有重复值。

globals()返回包含当前作用域内所有全局变量和值得字典。

locals()返回包含当前作用域内所有局部变量和值的字典。

1.字典的创建与删除

将一个字典赋值

>>> dict={'python':'dict','java':'javac'}
>>> dict
{'python': 'dict', 'java': 'javac'}

使用已有数据创建字典

>>> keys=['a','b','c','d']
>>> values=[1,2,3,4]>>> dictionary=dict(zip(keys,values))
>>> dictionary
{'a': 1, 'b': 2, 'c': 3, 'd': 4}

根据给定的键、值创建字典

>>> d=dict(name='wang',age='20')
>>> d
{'name': 'wang', 'age': '20'}

给定内容,创建值为空的字典

>>> dict = dict.fromkeys(['name','age','sex'])
>>> dict
{'name': None, 'age': None, 'sex': None}

使用del删除字典

2.字典元素的读取

以键作为小标可以读取字典元素,若键不存在则抛出异常

>>> dict={'name':'wang','age':'20'}
>>> dict['name']
'wang'
>>> dict['tel']          
Traceback (most recent call last):
File "<pyshell#33>", line 1, in <module>
dict['tel']
KeyError: 'tel'

使用字典对象的get方法获取指定键对应的值,并且可以在键不存在的时候返回指定值。

>>> dict['score']=dict.get('score',[])
>>> dict['score'].append(98)
>>> dict['score'].append(97)
>>> dict
{'name': 'wang', 'age': '20', 'score': [98, 97]}

使用字典对象的items()方法可以返回字典的键、值对列表

使用字典对象的keys()方法可以返回字典的键列表

使用字典对象的values()方法可以返回字典的值列表

>>> for item in dict.items():
print(item)
('name', 'wang')
('sex', 'male')
('age', '20')
>>> for key in dict
SyntaxError: invalid syntax
>>> for key in dict:
print(key)
name
sex
age

字典元素的添加与修改

当指定键为下标为字典赋值时,若键存在,则可以修改该键的值;若不存在,则表示添加一个键,值对。

>>> dict['age']=38        #修改元素值
>>> dict
{'name': 'wang', 'sex': 'male', 'age': 38}
>>> dict ['adress']='china'   #添加新元素
>>> dict
{'name': 'wang', 'sex': 'male', 'age': 38, 'adress': 'china'}

使用字典兑现搞得update方法将另一个字典的键,值对添加到当前字典对象

>>> dict.update({'a':'a','b':'b'})
>>> dict
{'name': 'wang', 'sex': 'male', 'age': 38, 'adress': 'china', 'a': 'a', 'b': 'b'}
>>>

3.字典元素的添加与修改

  使用del删除字典中指定键的元素

  使用字典对象的clear()方法来删除字典中所有元素

  使用字典对象的pop()放大删除并返回指定键的元素

  使用字典对象的popitem()方法删除并返回字典中的一个元素

python序列(十)字典的更多相关文章

  1. python序列,字典备忘

    初识python备忘: 序列:列表,字符串,元组len(d),d[id],del d[id],data in d函数:cmp(x,y),len(seq),list(seq)根据字符串创建列表,max( ...

  2. Python序列结构--字典

    字典:反映对应关系的映射类型 字典(dict)是包含若干“键:值”元素的无序可变序列 字典中元素的“键”可以是python中任意不可变数据,例如整数.实数.复数.字符串.元组等类型可哈希数据,“键”不 ...

  3. python 序列与字典

    序列概念: 序列的成员有序排列,可以通过下标访问到一个或几个元素,就类似与c语言的数组. 序列的通用的操作: 1:索引 11 = [1,2,3,4] 11[0] = 1 2:切片 11[1,2,3,4 ...

  4. Python列表,元组,字典,序列,引用

    1.列表 # Filename: using_list.py # This is my shopping list shoplist=["apple", "mango&q ...

  5. 孤荷凌寒自学python第十天序列之字符串的常用方法

    孤荷凌寒自学python第十天序列之字符串的常用方法 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) Python的字符串操作方法非常丰富,原生支持字符串的多种操作: 1 查找子字符串 str ...

  6. Python第十五天 datetime模块 time模块 thread模块 threading模块 Queue队列模块 multiprocessing模块 paramiko模块 fabric模块

    Python第十五天  datetime模块 time模块   thread模块  threading模块  Queue队列模块  multiprocessing模块  paramiko模块  fab ...

  7. Python第十四天 序列化 pickle模块 cPickle模块 JSON模块 API的两种格式

    Python第十四天 序列化  pickle模块  cPickle模块  JSON模块  API的两种格式 目录 Pycharm使用技巧(转载) Python第一天  安装  shell  文件 Py ...

  8. Python第十天 print >> f,和fd.write()的区别 stdout的buffer 标准输入 标准输出 从控制台重定向到文件 标准错误 重定向 输出流和输入流 捕获sys.exit()调用 optparse argparse

    Python第十天   print >> f,和fd.write()的区别    stdout的buffer  标准输入 标准输出  从控制台重定向到文件  标准错误   重定向 输出流和 ...

  9. 孤荷凌寒自学python第十六天python的迭代对象

    孤荷凌寒自学python第十六天python的迭代对象 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 迭代也就是循环. python中的迭代对象有相关的如下几个术语: A容器 contrai ...

  10. 孤荷凌寒自学python第十五天python循环控制语句

    孤荷凌寒自学python第十五天python循环控制语句 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) python中只有两种循环控制语句 一.while循环 while 条件判断式 1: ...

随机推荐

  1. JavaSE 学习笔记01丨开发前言与环境搭建、基础语法

    本蒟蒻学习过C/C++的语法,故在学习Java的过程中,会关注于C++与Java的区别.开发前言部分,看了苏星河教程中的操作步骤.而后,主要阅读了<Java核心技术 卷1 基础知识>(第8 ...

  2. Java反射——读取XML文件,创建对象

    读取XML文件,创建对象 config.xml <?xml version="1.0" encoding="UTF-8"?> <beans&g ...

  3. FDR校正

    一.假设检验 假设检验的基本思路是: 设立零假设(null hypothesis)H0,以及与零假设H0相对应的非零假设(alternative hypothesis)H1,在假设H0成立的前提下,计 ...

  4. LeetCode 004 Median of Two Sorted Arrays

    题目描述:Median of Two Sorted Arrays There are two sorted arrays A and B of size m and n respectively. F ...

  5. java42

    1.Random类 随机生成某个整数 Random r = new Random(); System.out.println(r.nextInt()); 伪随机数:第一次打印为随机,再次运行,数字将保 ...

  6. Spring Boot 统一返回结果及异常处理

    在 Spring Boot 构建电商基础秒杀项目 (三) 通用的返回对象 & 异常处理 基础上优化.调整 一.通用类 1.1 通用的返回对象 public class CommonReturn ...

  7. 第9.11节 Python中IO模块文件打开读写操作实例

    为了对前面学习的内容进行一个系统化的应用,老猿写了一个程序来进行文件相关操作功能的测试. 一. 测试程序说明 该程序允许测试人员选择一个文件,自己输入文件打开模式.写入文件的位置以及写入内容,程序按照 ...

  8. 第13.3节 图形界面开发tkinter

    一. 引言 老猿最开始是准备就tkinter单独开一个章节,但学了一段时间tkinter,最后放弃了,前一阵子还准备干脆不介绍相关的内容.主要原因有三个,一是tkinter没有界面设计的工具,所有界面 ...

  9. spring整合mybatis01

    title: spring整合mybatis01 date: 2020-03-09 19:47:40 tags:整合的第一种方式 spring整合mybatis 1.mybatis回顾 mybatis ...

  10. 关于phar反序列化——BUUCTF-[CISCN2019 华北赛区 Day1 Web1]Dropbox

    太难了QAQ 先看看phar是啥https://blog.csdn.net/u011474028/article/details/54973571 简单的说,phar就是php的压缩文件,它可以把多个 ...