python之dict
一.字典的定义
在python中,字典数据类型使用{}来定义,在大括号中,存储的是键值对,即key:value的形式,并且key不能有重复值,如果有重复,后面的值会覆盖前面的;值可以重复
字典通常用来存储描述一个物体的所有信息,这样就可以将多个字典放在一个list列表中,for遍历list就可以对所有字典进行相同的操作
# 字典的定义
dict1 = {"name": "xiaoming", "age":18, "sex": "man"}
print(dict1)
结果:
{'name': 'xiaoming', 'age': 18, 'sex': 'man'}
二.字典的遍历
字典是无序的,所以不能像字符串,列表一样使用下标来遍历访问,那如何获取字典中的元素呢?
dict1 = {"name": "xiaoming", "age": 20, "sex": "man"}
# print(dict1.keys()) # .keys()获取所有的键
for key in dict1.keys():
print(key)
结果如下
name
age
sex
dict1 = {"name": "xiaoming", "age": 20, "sex": "man"}
# print(dict1.values()) # .values()获取所有的值
for value in dict1.values():
print(value)
结果如下
xiaoming
20
man
dict1 = {"name": "xiaoming", "age": 20, "sex": "man"}
# print(dict1.items()) # .items()获取所有的键值对
for i in dict1.items():
print(i[0], i[1])
结果如下
name xiaoming
age 20
sex man
三.字典的常见操作
dict1 ={
"name": "xiaoming",
"age": 19,
"sex": "man"
}
print("字典类型和长度".center(30, "="))
print(len(dict1))
print(type(dict1))
# dict的常见操作
# 添加成员,直接赋值新的成员
print("添加成员".center(30, "="))
dict1["phonenumber"] = ""
print(dict1)
# 删除成员
print("删除成员".center(30, "="))
del dict1["phonenumber"]
print(dict1)
dict1.pop("sex")
print(dict1)
# 查询成员
# 通过键找值
print("查询成员".center(30, "="))
value = dict1.get("name")
print(value)
list1 = dict1.keys()
list2 = dict1.values()
print(list1)
print(list2)
# 修改
print("修改成员".center(30, "="))
dict1["name"] = "xianowang"
print(dict1)
结果如下
===========字典类型和长度============
3
<class 'dict'>
=============添加成员=============
{'name': 'xiaoming', 'age': 19, 'sex': 'man', 'phonenumber': ''}
=============删除成员=============
{'name': 'xiaoming', 'age': 19, 'sex': 'man'}
{'name': 'xiaoming', 'age': 19}
=============查询成员=============
xiaoming
dict_keys(['name', 'age'])
dict_values(['xiaoming', 19])
=============修改成员=============
{'name': 'xianowang', 'age': 19}
python之dict的更多相关文章
- Python中dict的特点、更新dict、遍历dict
dict的第一个特点是查找速度快,无论dict有10个元素还是10万个元素,查找速度都一样.而list的查找速度随着元素增加而逐渐下降. 不过dict的查找速度快不是没有代价的,dict的缺点是占用内 ...
- Python中dict详解
from:http://www.cnblogs.com/yangyongzhi/archive/2012/09/17/2688326.html Python中dict详解 python3.0以上,pr ...
- python 字典 dict 该注意的一些操作
在用python处理dict 的时候,有几个该注意的地方,这里跟大家提一下: 1)操作dict 时,尽量少产生新的列表对象.比如: 遍历dict的时候,如果用 dic = {"a" ...
- python字典dict的增、删、改、查操作
## python字典dict的增.删.改.查操作dict = {'age': 18, 'name': 'jin', 'sex': 'male', }#增# dict['heigh'] = 185 # ...
- Python 字典 dict() 函数
描述 Python 字典 dict() 函数用于创建一个新的字典,用法与 Pyhon 字典 update() 方法相似. 语法 dict() 函数函数语法: dict(key/value) 参数说明: ...
- Python 基础 Dict 和 Set 类型
python 什么是dict 例如: d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 } 我们把名称称为key,对应的成绩称为value,dic就是通过key 来查找 ...
- python实现dict版图遍历
python实现dict版图遍历的示例. 代码: #_*_coding:utf_8_import sysimport osclass Graph(): def __init__(self, V, E) ...
- Python之Dict和Set类型(入门5)
转载请标明出处: http://www.cnblogs.com/why168888/p/6407905.html 本文出自:[Edwin博客园] Python之Dict和Set类型 1. Python ...
- 'dict_values' object does not support indexing, Python字典dict中由value查key
Python字典dict中由value查key 众所周知,字典dict最大的好处就是查找或插入的速度极快,并且不想列表list一样,随着key的增加越来越复杂.但是dict需要占用较大的内存空间,换句 ...
- Python的dict字典结构操作方法学习笔记
Python的dict字典结构操作方法学习笔记 这篇文章主要介绍了Python的dict字典结构操作方法学习笔记本,字典的操作是Python入门学习中的基础知识,需要的朋友可以参考下 一.字典的基本方 ...
随机推荐
- 解决nginx和php使用ckfinder无法上传大文件的问题
现象描述:cms内容发布系统上传不了大文件,当上传超过32M文件时就上传不了 提示:无效的文件. 文件尺寸太大. 分析文件上传过程:browser --> nginx --> php 需要 ...
- 快速搭建一个Spring Boot + MyBatis的开发框架
前言:Spring Boot的自动化配置确实非常强大,为了方便大家把项目迁移到Spring Boot,特意总结了一下如何快速搭建一个Spring Boot + MyBatis的简易文档,下面是简单的步 ...
- Python- redis缓存 可达到瞬间并发量10W+
redis是什么? mysql是一个软件,帮助开发者对一台机器的硬盘进行操作. redis是一个软件,帮助开发者对一台机器的内存进行操作. redis缓存 可达到瞬间并发量10W+ 高并发架构系列:R ...
- 通过mysqlbinlog 恢复数据
前提数据库开启了bin_log记录日志. 查看日志 刷新日志 flush logs; 再次查看 show binary logs; 向表中插入一条数据 现在执行delete误操作,删除所有的数据. d ...
- Linux系统xinetd服务启动不了
Linux系统xinetd服务启动不了 xinetd服务时发现xinetd服务启动不了,并出现错误提示xinetd:unrecognized service,当出现这个错误提示的时候说明系统未安装xi ...
- 网络流24题 ——运输问题 luogu 4015
题目描述:这里 题面已经提示我们这是费用流了 那么由源点向所有仓库连边,容量为仓库原有货物量,费用为0 然后由所有零售商店向汇点连边,容量为一个零售商店的需求量,费用为0 最后由仓库向零售商店连边,容 ...
- ajax与后台交互案例
BBS项目 //BBS项目,注册页面ajax请求 // 1.实现照片预览 $("#up_myhead").change(function () { // 获取input选择的文件 ...
- BZOJ.4942.[NOI2017]整数(分块)
BZOJ 洛谷 UOJ 可能是退役之前最后一个BZOJ rank1了? 参考这里. 如果没有减法,对一个二进制数暴力进位,均摊复杂度是\(O(1)\)的(要进\(O(n)\)次位就至少需要\(O(n) ...
- NEL程序员专用轻钱包 进入0.01状态了
这个轻钱包能干什么,现在就能在测试网看个余额,转个帐,调用个合约. 而且功能非常程序员化 你会说是不是没啥用 但是他有非常有用,因为他可以很容易的拼出NEOGUI拼不出来的交易 比如参与ICO交易 ...
- Mac安装软件包管理工具Homebrew
PS:最近开始学习groovy,打算去官网下载SDK Bundle,可是官网半天加载不出来,而且莫名其妙就是下载不下来,Folx一直提示 "无效的HTTP相应:禁止",可能是插件和 ...