python基础之字典功能
python中字典是个很重要的功能,使用键值(key-value)存储,具有极快的查找速度。值得注意的是,字典的key要为不可变对象,比如字符串、字母,但不能是可变的,比如列表等。
1、字典的定义:
a.定义空字典:可以使用花括号或者调用dict函数来创建
>>> dic={}
>>> dic=dict()
>>>
b.定义具有初始值的字典:
>>> dic={'name':'柴振华','age':23}
>>> dic={sex='man'} #这种方式更优雅一些,但是变量除外,eg: key='name' dic={key='chai'},这样他是那不到key对应的值的
>>>
c.打印字典中的内容:
>>> print(dic)
{'name': '柴振华', 'age': 23}
>>>
d.添加一个记录:
>>> dic['job']='student'
>>> print(dic)
{'name': '柴振华', 'age': 23, 'sex': 'man', 'job': 'student'}
>>>
e.更新一条记录:
>>> dic['name']='张三' #同一个key只能对应一个值,后面的值会把前面的值覆盖掉
>>> print(dic)
{'name': '张三', 'age': 23, 'sex': 'man', 'job': 'student'}
>>>
f.删除一条记录:指定确切的key删除
>>> dic.pop('sex') #删除key的同时对应的value也一起被删除
>>> print(dic)
{'name': '张三', 'age': 23, 'job': 'student'}
>>>
>>> del dic['job'] #调用python的del来删除
>>> print(dic)
{'name': '张三', 'age': 23}
>>>
g.随机删除一条记录:
>>> dic.popitem()
('name', '张三') #表示删除了这个k/v
>>>
2、字典的其他操作:
a、获取字典中所有的key:
>>> dic={'name' : '张三','age':23,'job':'teacther'}
>>> dic.keys()
dict_keys(['name', 'age', 'job'])
>>>
b、获取字典中所有的value:
>>> dic.values()
dict_values(['张三', 23, 'teacther'])
>>>
c、获取字典中所有的key和values
>>> dic.items()
dict_items([('name', '张三'), ('age', 23), ('job', 'teacther')])
>>>
d、使用循环遍历读取字典:
读取所有key:
>>> for key in dic.keys():
... print(key)
...
name
age
job
>>>
读取所有value:
>>> for value in dic.values():
... print(value)
张三
23
teacther
>>>
读取所有k/v:
>>> for key,value in dic.items():
... print(key,':',value)
...
name:张三
age:23
job:teacther
>>>
3、快速创建具有初始值的字典:fromkeys()
fromkeys()函数用于创建一个新字典,以序列seq中的元素做字典的键,value为字典所有键的初始值
语法: dict.fromkeys(seq,[,value])
>>> li=['key1','key2','key3']
>>> dic=dict.fromkeys(li,3)
>>> dic
{'key1': 3, 'key2': 3, 'key3': 3}
>>> dic=dict.fromkeys(li,[2,3,4,])
>>> dic
{'key1': [2, 3, 4], 'key2': [2, 3, 4], 'key3': [2, 3, 4]}
python基础之字典功能的更多相关文章
- python基础之字典dict和集合set
作者:tongqingliu 转载请注明出处:http://www.cnblogs.com/liutongqing/p/7043642.html python基础之字典dict和集合set 字典dic ...
- Python基础数据类型-字典(dict)
Python基础数据类型-字典(dict) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客使用的是Python3.6版本,以及以后分享的每一篇都是Python3.x版本的哟 ...
- python基础之字典、集合
一.字典(dictionary) 作用:存多个值,key-value存取,取值速度快 定义:key必须是不可变类型,value可以是任意类型 字典是一个无序的,可以修改的,元素呈键值对的形式,以逗号分 ...
- Python基础知识---字典
现在在实习期间,好久没用Python了,今天在做Java项目时用的HashMap让我联想到了Python中的字典,就写一些Python字典的知识吧,复习复习. 字典: key --> valu ...
- python基础_字典_列表_元组考试_day4
1.请用代码实现:利用下划线将列表的每一个元素拼接成字符串,li=['alex','eric','rain'] li=['alex','eric','rain'] v="_".jo ...
- python基础5 字典
一.字典 字典是python的基础数据类型之一:字典可以存储大量的数据,关系型数据. 同样他也是python中唯一的映射类的数据类型. 数据类型的分类: 可变的(不可哈希)数据类型:list,dict ...
- Python 全栈开发二 python基础 字符串 字典 集合
一.字符串 1,在python中,字符串是最为常见的数据类型,一般情况下用引号来创建字符串. >>ch = "wallace" >>ch1 = 'walla ...
- Python基础__字典、集合、运算符
之前讨论的字符串.列表.元组都是有序对象,本节则重点讨论无序对象:字典与集合.一.字典 列表是Python中的有序集合,列表中的序指的是列表中的元素与自然数集形成了一个一一对应的关系.例如L=['I' ...
- python基础(字典)
#实现同样的功能,代码越少越好#非空即真,非0即真#not 取反 a = []b = ' 'c = ()d = 0e = Noneif a: print('真的')else: print('假的') ...
随机推荐
- 有关PyCharm安装库失败的问题的解决方法
最近因为要使用Python的缘故,安装了python IDE+pycharm,如此安装的原因是因为Pycharn 并不像anaconda一样拥有相对完整的依赖库和开发包,可以直接运行python,但因 ...
- vscode中内置集成终端显示为git(bash.exe)
按下快捷键 ctrl+` (其中的点是esc键下英文状态的点)调出vscode集成终端,也可从菜单栏的“查看→终端”中调出,默认显示的是系统cmd: 在设置中搜索 integrated shell 将 ...
- 一份中规中矩的 iOS笔试题
一.背景 因为一些原因,我从公司离职,在此之前,我需要帮忙招聘一个新人来做我的工作,于是就有了这篇文章. 由于公司项目16年就已经上线了,前同事写的项目中,有用xib.storyBoard.代码自动布 ...
- 通信协议之Modbus协议(一)
Modbus通信协议: 简介:Modbus协议是应用于电子控制器上的一种通用语言 通过此协议,控制器相互之间,控制器经由网络(例如以太网) 和其他设备之间可以通信,他已经成为一种通用工业标准,有啦它 ...
- koa中间执行机制
start 基于 koa 2.11 按以下流程分析: const Koa = require('koa'); const app = new Koa(); const one = (ctx, next ...
- 龙良曲pytorch学习笔记_03
import torch from torch import nn from torch.nn import functional as F from torch import optim impor ...
- windows下使用pycharm配置python的virtualenv环境
环境:win10 python2.7.10(64) 在path中配置python环境 注意:我这边的环境是py2和py3共存的,但是我这边默认使用的是py2. 在virtualenv环境中安装指定的p ...
- vue简介,插值表达式,过滤器
目录 VUE框架介绍 what?什么是vue? why?为什么要学习vue? special特点? how如何使用? 下载安装? 导入方式? 挂在点el 插值表达式 delimiters自定义插值表达 ...
- SpringBoot整合ActiveMQ和开启持久化
一.点对点 1.提供者目录展示 2.导入依赖 <dependency> <groupId>org.springframework.boot</groupId> &l ...
- XDOJ
1000.a+b. #include<bits/stdc++.h> using namespace std; int a,b; int main() { ios::sync_with_st ...