python数据结构之字典
来源:互联网 发布:加密狗软件安装 编辑:程序博客网 时间:2024/05/01 18:15
字典
- 又称为(# hash,映射,关联数组)
“字” —> 先找首字母,查到这个字的解释所在的页数;
字典是另一种可变容器模型,且可存储任意类型对象。
字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中
键必须是唯一的,但值则不必。
值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。
思维导图:
字典的定义:
d = {}
d = {“key1”:”value1”}
d = {“key1”:”value1”,”key2”:”value3”}
d = {
"172.25.254.1": { "user":"root", "password":"westos", "command":"hostname" },"172.25.254.2": { "user":"westos", "password":"westos1", "command":"hostname" }
} # 支持异构,嵌套
user=[“user1”,”user2”]
passwd=[“123”,”123”]
d=dict(zip(user,passwd))
“”.fromkeys([“a”,”b”],”1000”)
字典的特性
- 字典是可变数据类型;可使用len(d)内置函数,计算字典的长度;
- 字典是无序的,与序列(str,list,tuple)不同的是,不支持索引,切片,连接与重复。只能通过key值获取对应的value值;
- 字典支持异构,支持嵌套;
字典的增加
d.update()##添加,更新
d.setdefault(key[,value])#如果key存在,不更改;如果key不存在,添加key-value到字典中;
如果key值有,并不存在d字典中,默认value值None;
字典的删除
d.pop(key) # 根据某个key值删除字典中的key-value值;
d.popitem() # 随机删除key-value值
d.clear() # 清空字典的所有内容,字典还存在
del(d[“key”]) # 删除指定的key值的key-value
del(d) # 删除字典d,d直接不存在
字典的修改
d[“key2”]=”value3”
d.update({“key”:”value”})##修改key值对应的value
字典信息的查看
- d.get(“key”) # 如果key存在,返回value值;如果不存在,返回None;
- d[“key”] # 如果key存在,返回value值;如果不存在,直接报错;
- d.has_keys(“key”) # 如果key存在,返回True;如果不存在,返回False;
- d.items()
- d.keys()
- d.values()
注意:如何遍历字典的所有key-value值:
for key,value in d.items(): print key, value
- d.iterkeys()
i=d.iterkeys()print i.next()print i.next()print i.next()print i.next()
- d.itervalues()
- d.iteritems()
字典的复制
d.copy()
In [105]: d1 = d.copy()In [106]: id(d)Out[106]: 20314528In [107]: id(d1)Out[107]: 20338192In [108]: d2 = dIn [109]: id(d2)Out[109]: 20314528
阅读全文
0 0
- python数据结构之字典
- python数据结构之字典
- python数据结构之字典
- Python学习笔记-数据结构之字典
- Python数据结构之——字典
- python 数据结构六 之 字典与集合
- Python数据结构-字典
- Python数据结构--字典
- Python内存数据结构--字典
- python数据结构总结:字典
- Python基本数据结构之元组、集合与字典
- Python数据结构之映射(內建字典)
- Python数据结构之列表、栈、队列、链表、字典
- Python基础之数据结构(元组,列表,字典)
- 数据结构之字典树
- 数据结构之字典树
- 数据结构之字典树
- Redis数据结构之字典
- “大宝剑”的用法:玩玩DEFCON后渗透工具Koadic
- DBC连接数据库经验技巧
- HDU 1213 How Many Tables
- C#_SOCKET通信
- JAVA assert关键字
- python数据结构之字典
- hibernate三
- Windows_VMware安装Linux(CentOS)虚拟机
- 原生的JSON解析
- Too many processes on hostname
- UVa-673 Parentheses Balance(栈模拟)
- 20170829腾讯模拟笔试题解法,满二叉排序树给定三个节点的值,求最小子树根节点值
- 利用poi从jsp页面导出报表到excel
- 分组伸缩展开列表