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

  运行结果:

    

       

最新文章

  1. Ubuntu1604中mysql的登录问题
  2. Process Explorer使用图文教程
  3. 【初探HTML本相】道之真谛不过自然,html标签脱俗还真
  4. iOS UIWebView 捕获403 、404错误
  5. socket编写简单回显server
  6. 基本的TCP编程
  7. Hibernate一张图
  8. imageWithContentsOfFile读取全路径返回的image为空的解决方法
  9. html5/css3响应式布局介绍及设计流程
  10. 改进我们的小游戏 - 零基础入门学习Python004
  11. jQuery整理笔记5----jQuery大事
  12. 微信小程序去除button按钮的边框
  13. Hibernate 自动生产表
  14. 关于video标签移动端开发遇到的问题,获取视频第一帧,全屏,自动播放,自适应等问题
  15. vue在jsx中使用for循环
  16. nvm管理node版本
  17. mysql 下载地址
  18. 二:python 对象类型概述
  19. python ftp操作脚本&常用函数
  20. decorators.xml的用法

热门文章

  1. 安装nfs服务器
  2. PHP 计算出内存最高占用.
  3. A20VGA和lvds显示的切换-
  4. checkbox 全選、取消全選、反選
  5. The Dataflow Model 论文
  6. 七 mybatis的延迟加载
  7. Nginx服务器
  8. JS获取Cookie值
  9. 蓝牙 BLE GATT 剖析(二)-- GATT UUID and 举例
  10. Redis学习二 C#中如何进行这五种数据类型的操作