python_字典
1. 字典的定义
字典由多个键及其对应的值构成(我们也把键/值对称为项)。键是唯一的,值不唯一。键可以是数字、字符串甚至是元组。
2. 字典的创建
(1)
phonebook = {"Alice": "", "Beth": "", "Cecil": ""}
名称为键,电话号码为值。每个键和它的值之间用冒号隔开,项之间用逗号隔开,而整个字典是由一对大括号括起来。空字典(不包含任何项)由两个大括号组成。
(2) 使用dict函数
d = dict(name = "Gumby", age = 42)
print d["name"]
3. 字典的基本操作
(1) len(d)
返回d中项(键-值对)的数量
(2) d[k]
返回关联到键K上的值
(3) d[k] = v
将值v关联到键k上
(4) del d[k]
删除键为k的项(键-值对)
(5) k in d
检查d中是否含有键为k的项
4. 字典的方法
(1) clear()
清空字典中所有的项,无返回值
(2) copy()
返回一个具有相同键-值对的新字典
(3)get(key[, default])
获取对应键的值,如果键不存在,则返回None
(4)has_key(key)
检查字段中是否存在给出的键
(5)keys()
将字典中的键以列表的形式返回
(6)iterkeys()
返回针对键的迭代器
(7)values()
将字典中的值以列表的形式返回
(8)itervalues()
返回针对值的迭代器
5. 示例
#coding:utf-8 #清除字典中所有的项
d = {"name" : "Lucy", "age" : 25}
print d
d.clear()
print d #copy方法
x = {"username" : "admin", "machines" : ["foo", "bar", "baz"]}
y = x.copy()
y["username"] = "mlh"
y["machines"].remove("bar")
print y
print x #get方法
print x.get("kk") #has_key方法
print x.has_key("username") #keys方法
print x.keys() #iterkeys方法
it = x.iterkeys()
try:
while True:
val = it.next()
print val
except StopIteration:
pass #values方法
print x.values() #itervalues方法
it = x.itervalues()
try:
while True:
val = it.next()
print val
except StopIteration:
pass
运行结果:

python_字典的更多相关文章
- Python_字典及其操作
字典 概念 字典,Python基础数据类型之一,{}以键值对的形式存储数据. 以key : value 形式存储数据.例如,name 为 key,Laonanhai 为 value. dic = {' ...
- 零基础学习python_字典(25-26课)
今天学到后面的知识,突然发现之前学习到的字典列表啥的都有点忘了,打算补一下之前学到的字典,到时候你看的时候,字符串.列表.字典.元祖这几个没啥顺序,刚开始学的时候了解下方法,当然你可以死记硬背下,后面 ...
- python_字典 学习
一.创建字典(关联数组或hash表) 字典由键(key)和对应的值(values)组成. 代码: dic = { ‘ name‘:1 , ‘ zhang ’:2 , ‘ age‘ :3 , ‘ sex ...
- python_字典的使用
'''info = { "stu1":"Lie","stu2":"Weite","stu3":&qu ...
- python_字典(dict)
dict 一.结构: info = { "key":"value", "key":"value" } print(inf ...
- python_字典列表嵌套的排序问题
上一篇我们聊到python 字典和列表嵌套用法,这次我们聊聊字典和列表嵌套中的排序问题,这个在python基础中不会提到,但实际经常运用,面试中也喜欢问,我们娓娓道来. 在说组合排序之前,先来看看排序 ...
- python_字典 list_4
>>> import string>>> import random #组合字符>>> x=string.ascii_letters+string ...
- 【DG】Oracle_Data_Guard官方直译
[DG]Oracle Data Guard官方直译 1 Oracle Data Guard 介绍 Oracle Data Guard概念和管理10g版本2 Oracle Data Guard ...
- DVWA实验之Brute Force(暴力破解)- Low
DVWA实验之Brute Force-暴力破解- Low 这里开始DVWA的相关实验~ 有关DVWA环境搭建的教程请参考: https://www.cnblogs.com/0yst3r-2 ...
随机推荐
- HDU 1069 Monkey and Banana(二维偏序LIS的应用)
---恢复内容开始--- Monkey and Banana Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K ...
- Jenkins学习记录
参考资料 官方文档 用MSBuild和Jenkins搭建持续集成环境(1) 用MSBuild和Jenkins搭建持续集成环境(2) 构建基于Jenkins + Github的持续集成环境 Jenkin ...
- ps命令交叉编译
busybox中的ps命令是针对于嵌入式的,其中一些选项并不完整.因此需要将源码下载下来,进行交叉编译 官方下载地址 github下载地址 含有configure,我在此使用的是这个源码包,官方的包在 ...
- ecshop中$user对象
ecshop中$user对象 2011-10-01 18:41:23| 分类: ECSHOP | 标签:ecshop $user 对象 |举报|字号 订阅 http://blog.163.c ...
- 20145225 实验四《Andoid开发基础》
实验内容 搭建Android环境 运行Android 修改代码,能输出学号 实验步骤 安装Android Studio 安装Android的SDK 运行Andriod Studio并在模拟手机上显示自 ...
- 统计学习方法笔记 -- Boosting方法
AdaBoost算法 基本思想是,对于一个复杂的问题,单独用一个分类算法判断比较困难,那么我们就用一组分类器来进行综合判断,得到结果,"三个臭皮匠顶一个诸葛亮" 专业的说法, 强可 ...
- Yii2 捕获错误日志
在技术开发中,捕获程序框架错误,是非常必要的一件事情,我们公司使用Yii2框架,简单说下Yii2的错误捕获处理 Yii2 web应用 1 配置如下 其中errorHandler就是错误处理配置,执行E ...
- Inno Setup入门(十)——操作注册表 & 自启程序
http://379910987.blog.163.com/blog/static/3352379720110259414788/ 有些程序需要随系统启动,或者需要建立某些文件关联等问题,这些都是通过 ...
- C、VDD、VSS、 VEE 和VPP的区别
http://www.cnblogs.com/crazybingo/archive/2010/05/14/1735802.html C.VDD.VSS. VEE 和VPP的区别 在电子电路中,常可以看 ...
- Bootstrap 输入框和导航组件
一.输入框组件 //在左侧添加文字 <div class="input-group"> <span class="input-group-addon&q ...