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_字典的更多相关文章

  1. Python_字典及其操作

    字典 概念 字典,Python基础数据类型之一,{}以键值对的形式存储数据. 以key : value 形式存储数据.例如,name 为 key,Laonanhai 为 value. dic = {' ...

  2. 零基础学习python_字典(25-26课)

    今天学到后面的知识,突然发现之前学习到的字典列表啥的都有点忘了,打算补一下之前学到的字典,到时候你看的时候,字符串.列表.字典.元祖这几个没啥顺序,刚开始学的时候了解下方法,当然你可以死记硬背下,后面 ...

  3. python_字典 学习

    一.创建字典(关联数组或hash表) 字典由键(key)和对应的值(values)组成. 代码: dic = { ‘ name‘:1 , ‘ zhang ’:2 , ‘ age‘ :3 , ‘ sex ...

  4. python_字典的使用

    '''info = { "stu1":"Lie","stu2":"Weite","stu3":&qu ...

  5. python_字典(dict)

    dict 一.结构: info = { "key":"value", "key":"value" } print(inf ...

  6. python_字典列表嵌套的排序问题

    上一篇我们聊到python 字典和列表嵌套用法,这次我们聊聊字典和列表嵌套中的排序问题,这个在python基础中不会提到,但实际经常运用,面试中也喜欢问,我们娓娓道来. 在说组合排序之前,先来看看排序 ...

  7. python_字典 list_4

    >>> import string>>> import random #组合字符>>> x=string.ascii_letters+string ...

  8. 【DG】Oracle_Data_Guard官方直译

    [DG]Oracle Data Guard官方直译 1 Oracle Data Guard 介绍   Oracle Data Guard概念和管理10g版本2   Oracle Data Guard ...

  9. DVWA实验之Brute Force(暴力破解)- Low

    DVWA实验之Brute Force-暴力破解- Low     这里开始DVWA的相关实验~   有关DVWA环境搭建的教程请参考: https://www.cnblogs.com/0yst3r-2 ...

随机推荐

  1. 双机冗余备份和负载均衡策略(Mysql Cluster入门安装配置指南)

    MySQL Cluster 是MySQL适合于分布式计算环境的高实用.高冗余版本.它采用了NDB Cluster 存储引擎,允许在1个 Cluster 中运行多个MySQL服务器.MySQL Clus ...

  2. Bungie Interview with Halo3 Developer

    http://www.realtimerendering.com/blog/tag/bungie/ Digital Foundry interview with Halo: Reach develop ...

  3. ROSE User Case View

    用例视图(User Case View) 在面向对象的分析过程中,此视图应该是需求分析的过程中采用,主要包括如下过程 01涉众分析--->02业务分析--->03概念分析--->04 ...

  4. Java反射机制深入研究

    ava 反射是Java语言的一个很重要的特征,它使得Java具体了“动态性”.   在Java运行时环境中,对于任意一个类,能否知道这个类有哪些属性和方法?对于任意一个对象,能否调用它的任意一个方法? ...

  5. JavaScript POST 请求如何跨域

    前天遇到一个问题,就是我上传图片的时候,这个图片需要上传给某个API的接口 这样问题就来了,我们之前上传图片的时候都是先上传到我们自己的后台里面,然后通过后台,再把这个流传到图片服务器上. 但是上传到 ...

  6. 借用layer让弹层不限制在iframe内部

    使用方法: 1 除了layer的success,end,cancel回掉函数以外其它的layer参数都可以使用. 2 使用前在layer的js后边把该js引入(可以命名为layerExtend). 3 ...

  7. Nodejs电影建站开发实例(下)

    作为一个真正的网站,不能没有数据的支持,下面使用的数据库为mongodb,电影可能有的数据:电影名称.导演.国家.语言.上映时间.图片.简介.视频 4.使用路由 app.js var express ...

  8. sublime删除安装的插件

    如果想要删除插件,Ctrl+Shift+P调出命令面板,输入remove,调出Remove Package选项并回车,选择要删除的插件即可

  9. [LeetCode]题解(python):101 Symmetric tree

    题目来源 https://leetcode.com/problems/symmetric-tree/ Given a binary tree, check whether it is a mirror ...

  10. thinkphp 加载静态框架frameset frame 浏览器显示空白

    我觉得静态框架这个东西非常奇怪,可能是因为没有研究透它. 我的情况是这样的,我之前做过的一个面向对象没有基于thinkPHP,的项目中用同一套后台静态框架没有问题,但用thinkphp后台的index ...