第八章【字典】

  • 字典
    key,value对,可变对象,无序,任意嵌套,通过key获取value。

  • 常见字典常量和操作

D = {}                              空字典
D = {'a':1, 'b':2}                  这就是字典
D = dict.fromkeys(['a','b'])
D = dict(zip(keyslist, valslist))
D = dict(name='Bob', age=22)        创建字典的函数
D['name']                           通过索引key获取对应的value
D.keys()                            返回D字典对象所有key,返回一个列表
D.values()                          返回D字典对象所有value,返回一个列表
D.items()                           返回key,value值,返回元祖对象
D.copy()
D.get(key,default)                  获取字典对象D的key,如果该key不存在则返回default处定义的值
D.update(D1)                        字典D与字典D1合并
D.pop(key)                          弹出key的值,返回value,并从D对象中删除key,value对
len(D)                              元素个数
D[key] = value                      重新赋值,或者添加一个新key,value对
del D[key]
list(D.keys())                      # python2.6返回列表,但是python3.0返回一个迭代器,需要用list()方法。
{x: x*2 for x in range(10)}         python3.0支持字典解析表达式
  • 一些例子
# for循环遍历字典
>>> d
{'a': '11', 'b': 2}
>>> for i in d:
...     print(i, d[i])
... 
('a', '11')
('b', 2)

# 
>>> zip(['a','b','c'], [1,2,3])
[('a', 1), ('b', 2), ('c', 3)]
>>> list(zip(['a','b','c'], [1,2,3]))
[('a', 1), ('b', 2), ('c', 3)]
>>> dict(zip(['a','b','c'], [1,2,3]))
{'a': 1, 'c': 3, 'b': 2}
  • 创建字典的4中方法
# 1、可以事先拼写出所有key,value对这样很方便
{'a':1, 'b':2}

# 2、动态建立一个字典
a = {}
a['a'] = 1
a['b'] = 2

# 3、关键字形式,key必须都为字符串才行
dict(a=1,b=2)

# 4、在程序运行时把key,value逐步建成序列
dict([('a',1),('b',2)])
  • 字典key排序
>>> d
{'a': 1, 'c': 3, 'b': 2}
>>> for i in sorted(d.keys()): print(i)
... 
a
b
c

>>> ks = d.keys()
>>> ks.sort()
>>> ks
['a', 'b', 'c']
  • has_key()方法不要再使用,使用in替代,因为python3.0中删除了前者
>>> d.has_key('a')
True
>>> d.has_key('d')
False
>>> 'a' in d
True
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值