python序列(十)字典
字典是无序可变序列。
定义字典是,每个元素的键和值用冒号分隔,元素之间用逗号分隔,所有的元素放在一对大括号“{ }”中。
字典中的键可以为任意不可变数据,比如、整数、实数、复数、字符串、元组等等。键值不能有重复值。
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序列(十)字典的更多相关文章
- python序列,字典备忘
初识python备忘: 序列:列表,字符串,元组len(d),d[id],del d[id],data in d函数:cmp(x,y),len(seq),list(seq)根据字符串创建列表,max( ...
- Python序列结构--字典
字典:反映对应关系的映射类型 字典(dict)是包含若干“键:值”元素的无序可变序列 字典中元素的“键”可以是python中任意不可变数据,例如整数.实数.复数.字符串.元组等类型可哈希数据,“键”不 ...
- python 序列与字典
序列概念: 序列的成员有序排列,可以通过下标访问到一个或几个元素,就类似与c语言的数组. 序列的通用的操作: 1:索引 11 = [1,2,3,4] 11[0] = 1 2:切片 11[1,2,3,4 ...
- Python列表,元组,字典,序列,引用
1.列表 # Filename: using_list.py # This is my shopping list shoplist=["apple", "mango&q ...
- 孤荷凌寒自学python第十天序列之字符串的常用方法
孤荷凌寒自学python第十天序列之字符串的常用方法 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) Python的字符串操作方法非常丰富,原生支持字符串的多种操作: 1 查找子字符串 str ...
- Python第十五天 datetime模块 time模块 thread模块 threading模块 Queue队列模块 multiprocessing模块 paramiko模块 fabric模块
Python第十五天 datetime模块 time模块 thread模块 threading模块 Queue队列模块 multiprocessing模块 paramiko模块 fab ...
- Python第十四天 序列化 pickle模块 cPickle模块 JSON模块 API的两种格式
Python第十四天 序列化 pickle模块 cPickle模块 JSON模块 API的两种格式 目录 Pycharm使用技巧(转载) Python第一天 安装 shell 文件 Py ...
- Python第十天 print >> f,和fd.write()的区别 stdout的buffer 标准输入 标准输出 从控制台重定向到文件 标准错误 重定向 输出流和输入流 捕获sys.exit()调用 optparse argparse
Python第十天 print >> f,和fd.write()的区别 stdout的buffer 标准输入 标准输出 从控制台重定向到文件 标准错误 重定向 输出流和 ...
- 孤荷凌寒自学python第十六天python的迭代对象
孤荷凌寒自学python第十六天python的迭代对象 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 迭代也就是循环. python中的迭代对象有相关的如下几个术语: A容器 contrai ...
- 孤荷凌寒自学python第十五天python循环控制语句
孤荷凌寒自学python第十五天python循环控制语句 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) python中只有两种循环控制语句 一.while循环 while 条件判断式 1: ...
随机推荐
- IDEA创建web工程,不用Archetype(超简单)
Idea不用Archetype创建Web项目 以新建模块为例. 新建Maven项目 不勾选[Create from artchetype],直接Next pom中添加一句话: <artifact ...
- Java基础教程——List(列表)
集合概述 Java中的集合,指一系列存储数据的接口和类,可以解决复杂的数据存储问题. 导包:import java.util.*; 简化的集合框架图如下: List·列表 ArrayList List ...
- Mybatis【2.1】-- 从读取流到创建SqlSession发生了什么?
目录 1.Resources.getResourceAsStream("mybatis.xml")到底做了什么? 2. new SqlSessionFactoryBuilder() ...
- HBase中Memstore存在的意义以及多列族引起的问题和设计
Memstore存在的意义 HBase在WAL机制开启的情况下,不考虑块缓存,数据日志会先写入HLog,然后进入Memstore,最后持久化到HFile中.HFile是存储在hdfs上的,WAL预写日 ...
- LeetCode 026 Remove Duplicates from Sorted Array
题目描述:Remove Duplicates from Sorted Array Given a sorted array, remove the duplicates in place such t ...
- (八)函数调用为何会发生“Stack Overflow”
一.一次函数调用分析 c代码: // function_example.c #include <stdio.h> int static add(int a, int b) { return ...
- 记账本APP小升级
增加了显示当月总收入和总支出的功能,增加了选择收支类型的功能,删去了删除账目后恢复的功能. 1.数据库的升级 1.entity 添加了一个收支类型的字段: package com.example.ca ...
- Android10_原理机制系列_PMS的启动及应用的安装过程
概述 这里主要介绍 PackageManagerService(简称PMS)的启动 和 一个应用的安装过程.这里只是大致总结,供参考,不少地方同样需要进一步深入了解学习的. 该篇相关代码也是基于And ...
- Day1-7【Scrum 冲刺博客集合】
Day1-Day7博客链接 Day1[Scrum 冲刺博客] Day2[Scrum 冲刺博客] Day3[Scrum 冲刺博客] Day4[Scrum 冲刺博客] Day5[Scrum 冲刺博客] D ...
- mvvm和mvc区别?
mvc和mvvm其实区别并不大.都是一种设计思想.主要就是mvc中Controller演变成mvvm中的viewModel. mvvm主要解决了mvc中大量的DOM 操作使页面渲染性能降低,加载速度变 ...