字典是无序可变序列。

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

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

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. [从源码学设计]蚂蚁金服SOFARegistry之消息总线

    [从源码学设计]蚂蚁金服SOFARegistry之消息总线 目录 [从源码学设计]蚂蚁金服SOFARegistry之消息总线 0x00 摘要 0x01 相关概念 1.1 事件驱动模型 1.1.1 概念 ...

  2. 从零做网站开发:基于Flask和JQuery,实现表格管理平台

    摘要:本文将为大家带来基于Flask框架和JQuery实现管理平台网站的开发功能. [写在前面] 你要开发网站? 嗯.. 会Flask吗? 什么东西,没听过... 会JQuery吗? 是python的 ...

  3. presto 访问kudu 多schemas配置

    presto需要访问kudu数据源,但是impala可以直接支持多数据库存储,但是presto不能原生支持,按照presto的官网设置了然而并不起作用. 官方文档: 到官方github提问了,然后并没 ...

  4. 01_Activity生命周期及传递数据

    1. Activity的生命周期: 2. Activity启动另一个Activity,并传递数据: package com.example.activitydemo; import android.a ...

  5. Hyper-V 中设置虚拟机静态 IP

    一.新建虚拟网络交换机 二.配置网络 网络共享默认使用 192.168.137.0/255 作为内网地址,192.168.137.1 作为网关 三.配置虚拟机静态 IP 安装完成虚拟机后修改配置文件: ...

  6. 第8.18节 Python类中内置析构方法__del__

    一. 引言 基本上所有支持OOP设计的语言都支持析构方法(也称析构函数),析构方法都是在对象生命周期结束时调用,一般用来实施实例相关生命周期内访问数据的扫尾工作,包括关闭文件.释放内存.输出日志.清理 ...

  7. PyQt(Python+Qt)学习随笔:QScrollArea滚动区域的scrollAreaWidgetContents、widget及setWidget等相关概念解释

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 在Designer中设计将一个lable放到滚动区域上,使用PyUIC生成代码后,可以看到除了QSc ...

  8. 第九章、Qt Designer可视化设计界面布局组件介绍

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.引言 在Qt Designer中,在左边部件栏的提供了界面布局相关部件,如图: 可以看到共包含有 ...

  9. OA公文流转系统(未完成)

    基本页面比较多,所以就不贴出来了,具体的页面可以自行浏览. 点我进入OA系统浏览界面(未做响应式布局,需电脑端打开) 账号密码: 部门:bumen------bumen 办公室:bangongshi- ...

  10. springboot配置ssl证书

    springboot默认使用的是tomcat: 1.先到阿里云上注册一个证书,绑定域名:后面可以在管理中下载证书,下载tomcat对应的证书(一个*.pfx文件和*.txt文件) 2.将pfx文件拷贝 ...