Python dict 方法


1.  dict.clear()

dict_1 = {'name': 'sd', 'age': '18'}
dict_1.clear()
print(dict_1)
{}

2.  dict.copy()

# dict.copy返回一个字典的浅复制
dict_1 = {'name': 'sd', 'age': '18'}
dict_2 = dict_1.copy()
print(dict_2)
{'name': 'sd', 'age': '18'}

3.  dict.fromkeys()

# @staticmethod 返回函数的静态方法
# fromkeys()函数用于创建一个新字典
# 以序列seq中元素做字典的键,value为字典所有的键对应的初始值。
# 直接使用dict.fromkeys(seq[,value])
# seq--字典键值列表
# value--可选参数,设置键序列(seq)的值
seq = ('name', 'age', 'sex',)
dict_1 = dict.fromkeys(seq)
print('新的字典为: ' + str(dict_1))
新的字典为: {'name': None, 'age': None, 'sex': None}

seq = ('name', 'age', 'sex',)
dict_1 = dict.fromkeys(seq, 10)
print('新的字典为: ' + str(dict_1))
新的字典为: {'name': 10, 'age': 10, 'sex': 10}

4.  dict.get(key, default=None)

# key--字典中要查找的键
# default--如果指定键的值不存在时,返回该默认值None
# get 不向字典里添加
dict_1 = {'name': 'za', 'age': '22'}
a1 = dict_1.get('age')
print(a1)
a2 = dict_1.get('sex', 'never')
print(a2)
22
never

5.  dict.items()

#items()方法以列表返回可遍历的(键,值)元组列表。
dict_1 = {'name': 'za', 'age': '22'}
print(dict_1.items())
dict_items([('name', 'za'), ('age', '22')])

6.  key in dict

# in 操作用于判断是否存在于字典中
# key--要在字典中查找的键
dict_1 = {'name': 'za', 'age': '22'}
if 'age' in dict_1:
    print('键 age 存在')
if 'sex' in dict_1:
    print('键 sex 存在')
else:
    print('键 sex 不存在')
键 age 存在
键 sex 不存在

7.  dict.pop(key[, default])

# pop()方法删除字典给定的key所对应的值,返回被删除的值。
# key的值必须给出,否则返回defau值。
dict_1 = {'name': 'za', 'age': '22'}
pop_obj = dict_1.pop('name')
print(pop_obj)
dict_2 = {'name': 'za', 'age': '22'}
pop_obj_1 = dict_1.pop('sex','No')
print(pop_obj_1)
za
No

8.  dict.popitem()

# popitem()方法随机返回并删除字典中的一对键和值(一般删除末尾对)
#如果字典已经为空,却调用了此方法,则报出KeyError异常
dict_1 = {'name': 'za', 'age': '22', 'sex': 'No'}
popitem_obj = dict_1.popitem()
print(popitem_obj)
('sex', 'No')

9.  dict.setdefault(key, default=None)

# setdefault()方法和get()方法类似
# 如果键不存在于字典中,将会添加键并将键设为默认值
# key--查找的键值
# default--键不存在时,设置的默认键值
dict_1 = {'name': 'za', 'age': '22', 'sex': 'No'}
set_1 = dict_1.setdefault('name', '狗蛋')
set_2 = dict_1.setdefault('school', 'bk')
print(set_1)
print(dict_1)
za
{'name': 'za', 'age': '22', 'sex': 'No', 'school': 'bk'}

10.  dict.update(dict2)

# update()函数把字典参数dict2的键、值(key/value)对更新到字典dict里
dict_1 = {'name': 'za', 'age': '22'}
dict_2 = {'sex': 'No', 'school': 'bk', 'name': 'za'}
dict_1.update(dict_2)
print(dict_1)
{'name': 'za', 'age': '22', 'sex': 'No', 'school': 'bk'}

11.  dict.values()

# values()方法以列表返回字典中的所有值
dict_1 = {'name': 'za', 'age': '22'}
print(dict_1.values())
print(list(dict_1.values()))
dict_values(['za', '22'])
['za', '22']

12.  字典长度

dict_1 = {'name': 'za', 'age': '22'}
print(len(dict_1))
 2

13.  查看类型

dict_1 = {'name': 'za', 'age': '22'}
print(type(dict_1))
<class 'dict'>

14.字典特性:不允许同一键出现两次,创建时同一键出现两次后一个值会被记住

dict_1 = {'name': 'za', 'age': '22', 'name': 'zzz'}
print(dict_1)
{'name': 'zzz', 'age': '22'}

15.  del 删除字典元素/删除字典

dict_1 = {'name': 'za', 'age': '22', 'name': 'zzz'}
del dict_1['name']
print(dict_1)
{'age': '22'}

# 删除字典 会引发一个异常,因为执行del后字典不再存在
dict_1 = {'name': 'za', 'age': '22', 'name': 'zzz'}
del dict_1
print(dict_1)
Traceback (most recent call last):
  File "C:/Users/123/PycharmProjects/py2018/test", line 75, in <module>
    print(dict_1)
NameError: name 'dict_1' is not defined

16.  修改和添加、访问

dict_1 = {'name': 'za', 'age': '22'}
print(dict_1['name]') dict_1[
'sex'] = 'No' dict_1['name'] = 'ww' print(dict_1)

长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号





    联系我们

    欢迎来到TinyMind。

    关于TinyMind的内容或商务合作、网站建议,举报不良信息等均可联系我们。

    TinyMind客服邮箱:support@tinymind.net.cn