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 ...
随机推荐
- 双机冗余备份和负载均衡策略(Mysql Cluster入门安装配置指南)
MySQL Cluster 是MySQL适合于分布式计算环境的高实用.高冗余版本.它采用了NDB Cluster 存储引擎,允许在1个 Cluster 中运行多个MySQL服务器.MySQL Clus ...
- Bungie Interview with Halo3 Developer
http://www.realtimerendering.com/blog/tag/bungie/ Digital Foundry interview with Halo: Reach develop ...
- ROSE User Case View
用例视图(User Case View) 在面向对象的分析过程中,此视图应该是需求分析的过程中采用,主要包括如下过程 01涉众分析--->02业务分析--->03概念分析--->04 ...
- Java反射机制深入研究
ava 反射是Java语言的一个很重要的特征,它使得Java具体了“动态性”. 在Java运行时环境中,对于任意一个类,能否知道这个类有哪些属性和方法?对于任意一个对象,能否调用它的任意一个方法? ...
- JavaScript POST 请求如何跨域
前天遇到一个问题,就是我上传图片的时候,这个图片需要上传给某个API的接口 这样问题就来了,我们之前上传图片的时候都是先上传到我们自己的后台里面,然后通过后台,再把这个流传到图片服务器上. 但是上传到 ...
- 借用layer让弹层不限制在iframe内部
使用方法: 1 除了layer的success,end,cancel回掉函数以外其它的layer参数都可以使用. 2 使用前在layer的js后边把该js引入(可以命名为layerExtend). 3 ...
- Nodejs电影建站开发实例(下)
作为一个真正的网站,不能没有数据的支持,下面使用的数据库为mongodb,电影可能有的数据:电影名称.导演.国家.语言.上映时间.图片.简介.视频 4.使用路由 app.js var express ...
- sublime删除安装的插件
如果想要删除插件,Ctrl+Shift+P调出命令面板,输入remove,调出Remove Package选项并回车,选择要删除的插件即可
- [LeetCode]题解(python):101 Symmetric tree
题目来源 https://leetcode.com/problems/symmetric-tree/ Given a binary tree, check whether it is a mirror ...
- thinkphp 加载静态框架frameset frame 浏览器显示空白
我觉得静态框架这个东西非常奇怪,可能是因为没有研究透它. 我的情况是这样的,我之前做过的一个面向对象没有基于thinkPHP,的项目中用同一套后台静态框架没有问题,但用thinkphp后台的index ...