python小白之路:第四章数据类型第四节字典

字典

相关函数

len()

返回列表元素个数。

vard = {'a':1,'b':2}
print(len(vard))
# 2

str() & type()

强制转换为字符串

查询数据类型

 vard = {'a': 1 ,'b':2}
    res = str(vard)
    print(res,type(res))
    # {'a': 1, 'b': 2} <class 'str'>

dict.clear()

用于删除字典内所有元素。

 vard = {'a': 1 ,'b':2}
    vard.clear()
    print(vard)
    # {}

dict.copy()

返回一个字典的浅复制。

  vard = {'a': 1 ,'b':2,'c':[1,2,3]}
    vard1 = vard.copy()
    print(vard1)
    vard['c'].remove(1)
    print(vard)
    print(vard1)
    # {'a': 1, 'b': 2, 'c': [1, 2, 3]}
    # {'a': 1, 'b': 2, 'c': [2, 3]}
    # {'a': 1, 'b': 2, 'c': [2, 3]}

dict.fromkeys(seq[,value])

创建一个新字典,以序列 seq 中元素做字典的键,value 为字典所有键对应的初始值。

seq = ['a','b']
dict = dict.fromkeys(seq,2)
print(res)
# {'a': 2, 'b': 2}

dict.get(key,default=None)

返回指定键的值,如果值不在字典中返回默认值。

 vard = {'a': 1 ,'b':2,'c':[1,2,3]}
    print(vard.get('c'))
    print(vard.get('d',0))
    # [1, 2, 3]
    # 0

in & not in

判断键是否存在于字典中,在,返回 true,否则返回 false。

操作符刚好相反

  vard = {'a': 1 ,'b':2,'c':[1,2,3]}
    print('c' in vard)
    print('d' in vard)
    print(1 in vard)
    # True
    # False
    # False

dict.items()

以列表形式返回可遍历的(键, 值) 元组数组。

vard = {'a': 1 ,'b':2,'c':[1,2,3]}
print(vard.items())
# dict_items([('a', 1), ('b', 2), ('c', [1, 2, 3])])

dict.keys()

返回一个可迭代对象,可以使用 list() 来转换为列表。

  vard = {'a': 1 ,'b':2,'c':[1,2,3]}
    print(vard.keys())
    print(list(vard.keys()))
    # dict_keys(['a', 'b', 'c'])
    # ['a', 'b', 'c']

dict.update(dict1)

把字典参数 dict1 的 key/value(键/值) 对更新到字典 dict 里。

   vard = {'a': 1 ,'b':2,'c':[1,2,3]}
    vard1 = {'a':2 ,'d':4}
    vard1.update(vard)
    print(vard)
    print(vard1)
    # {'a': 1, 'b': 2, 'c': [1, 2, 3]}
    # {'a': 1, 'd': 4, 'b': 2, 'c': [1, 2, 3]}

dict.values()

返回一个迭代器,为字典中的所有值。

   vard = {'a': 1 ,'b':2,'c':[1,2,3]}
    print(vard.values(),type(vard.values()))
    print(list(vard.values()))
    # dict_values([1, 2, [1, 2, 3]]) <class 'dict_values'>
    # [1, 2, [1, 2, 3]]

dict.popitem()

随机返回并删除字典中的最后一对键和值,LIFO:后进先出。空字典调用时报错

  vard = {'a': 1 ,'b':2,'c':[1,2,3]}
    print(vard.popitem())
    print(vard.popitem())
    print(vard.popitem())
    print(vard)
    print(vard.popitem())
    # ('c', [1, 2, 3])
    # ('b', 2)
    # ('a', 1)
    # {}
    # KeyError: 'popitem(): dictionary is empty'

iter(dict)

返回以字典的key为元素的迭代器

  dict = {'a':1,'b':2}
    print(iter(dict))
    print(list(iter(dict)))
    # <dict_keyiterator object at 0x000002BD87E6D818>
    # ['a', 'b']

dict.setdefault()

返回以字典的key为元素的迭代器

 dict = {'a':1,'b':2}
    print(dict.setdefault(3))
    print(dict.setdefault('a'))
    print(dict.setdefault(1,2))
    print(dict)
    # None
    # 1
    # 2
    # {'a': 1, 'b': 2, 3: None, 1: 2}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值