《Python参考手册(第4版•修订版)》——1.9 字典

本节书摘来自异步社区《Python参考手册(第4版•修订版)》一书中的第1章,第1.9节,作者David M. Beazley,更多章节内容可以访问云栖社区“异步社区”公众号查看。

1.9 字典

字典就是一个关联数组或散列表,其中包含通过键(key)索引的对象。在大括号({ })中放入值即可创建字典,如下所示:

stock = { 
        "name"   : "GOOG",
        "shares" : 100,
        "price"  : 490.10
    }

要访问字典成员,可使用键索引运算符,如下所示:

name  = stock["name"]
value = stock["shares"] * shares["price"]

插入或修改对象的方法是:

stock["shares"] = 75
stock["date"]   = "June 7, 2007"

尽管字符串是最常用的键类型,还可以使用其他的Python对象,包括数值和元组。但包括列表和字典在内的一些对象不能用作键,因为它们的内容可以发生变化。

如前所述,在定义一个可包含多个命名字段的对象时,字典是一种很有用的方式。然而,字典也可用作快速查找无序数据的一个容器。例如,下面是一个股票价格的字典:

prices = { 
    "GOOG" : 490.10,
    "AAPL" : 123.50,
    "IBM"  : 91.50,
    "MSFT" : 52.13
}

创建一个空字典有两种方式:

prices = {}     # 一个空字典
prices = dict()  # 一个空字典

使用in运算符可以检验某个内容项是不是字典成员,如下所示:

if "SCOX" in prices:
    p = prices["SCOX"]
else:
    p = 0.0

这个特殊的步骤序列还可以写成更简洁的形式,如下所示:

p = prices.get("SCOX",0.0)

要获得一个字典关键字的列表,将字典转换为列表即可:

syms = list(prices) # syms = ["AAPL", "MSFT", "IBM", "GOOG"]

使用del语句可以删除字典的元素:

del prices["MSFT"]

字典可能是Python解释器中最完善的数据类型。因此,如果只是要在程序中存储和处理数据,使用字典比使用一些自定义数据结构要好得多。

上一篇:《Python参考手册(第4版•修订版)》——1.11 函数


下一篇:《Python参考手册(第4版•修订版)》——1.10 迭代与循环