python-字典-dict-Dictionary-复制-赋值-创建等-常用操作全解,详解

  • Post author:
  • Post category:python


在python的编程中,我们经常会遇到需要字典的情况,python的 等号= 是非常神奇而好用的东西,python只要等号赋值了,那么一切皆对象是也!



(1)创建一个空字典

dict1={}    # =号,一对大括号即可



(2)创建一个有内容的字典

dict2={'美女':"迷你漂亮",'胸围':88,'腰围':52,'臀围':86}   #后面的字典dict2,就指这一个哦,请稍微记一下



(3)复制字典


(㳀复制,只是多了个名字,字典还是原来的字典)

dict3=dict2

# 这时候,dict3与dict2只是名字不一样,内容是一样的,如果dict2变化,则dict3也是跟着变的,反过来也是这样,dict3变会带着dict2变化

#所以建议大家不要用这一种复制,否则你多整几个不同的名字,代码稍微多一些,很容易不小心改了一个地方引起其他地方出错



(4)复制字典


2 (强烈推荐这个深层复制哦,我就叫深复制吧)

dict4=dict2.copy()

# 这时候的dict4,复制后,就与dict2一模一样的,但是这绝对就是完全不同的2个字典,各自变化都不再互相影响



(5)复制的技巧

如果遇到分支,一般先复制一个空字典,满足条件再用深复制(第4点)

dict5={}

isBeauty=True

if isBeauty:   # 你认为是美女,就整多个,双…

dict5=dict2.copy()  #

else:

pass    # 如果你不爱美女,就把pass换成你要的吧



(6)


为字典增加值,也就是


添加新元素


,一般包括 主键值(不能重复),对应的值

dict2.setdefault('腿长',120)  # 我们为 dict2 的美女增加 腿长:120的字典元素



(7)遍历字典


#访问字典元素,一般就是  dict[‘主键’]  ,增加,修改,取值,删除等操作   ” dict[key] ”

for k in dict2:
    print(k)
    print(dict2[k])
#------------------------

for k in dict2.keys():
    print(k)
    print(dict2[k])

# 上面2种方法都是可以的,意思也差不多,结果一样,输出的 k 是主键值,输出的 dict2[k]是该主键对应的值value

#所以访问字典元素,一般就是  dict[‘主键’]



(8)其他字典dict常用操作


-1-:

clear()方法

clear() 用于清空字典中所有的 key-value 对,对一个字典执行 clear() 方法之后,该字典就会变成一个空字典。例如如下代码:

dict2.clear()

-2-:

get()方法

get() 方法其实就是根据 key 来获取 value,它相当于方括号语法的增强版,当使用方括号语法访问并不存在的 key 时,字典会引发 KeyError 错误;但如果使用 get() 方法访问不存在的 key,该方法会简单地返回 None,不会导致错误。例如如下代码:

y=dict2.get('腰围')
print(y)  #按上面定义的内容,这个小蛮腰 y=52

-3-:

update()方法

update() 方法可使用一个字典所包含的 key-value 对来更新己有的字典。在执行 update() 方法时,如果被更新的字典中己包含对应的 key-value 对,那么原 value 会被覆盖;如果被更新的字典中不包含对应的 key-value 对,则该 key-value 对被添加进去。例如如下代码:

dict2.update({'腰围':51})    # update( { key:value } )  

# 这里要注意,update后面一个小括号(),小括号内是大括号,分别是 key:value, 这里的key可以是新的,也可以是原来字典的,如果新key不在原字典里,则直接是添加新元素到原字典里。

#如果key是原来存在的,则把应对的值value更新为最新的

-4-:

items()、keys()、values()

items()、keys()、values() 分别用于获取字典中的所有 key-value 对、所有 key、所有 value。这三个方法依次返回 dict_items、dict_keys 和 dict_values 对象,Python 不希望用户直接操作这几个方法,但可通过 list() 函数把它们转换成列表。如下代码示范了这三个方法的用法:

-5-:

pop方法

pop() 方法用于获取指定 key 对应的 value,并删除这个 key-value 对。如下方法示范了 pop() 方法的用法:

-6-:

popitem()方法

popitem() 方法用于随机弹出字典中的一个 key-value 对。

-7-:

fromkeys()方法

fromkeys() 方法使用给定的多个 key 创建字典,这些 key 对应的 value 默认都是 None;也可以额外传入一个参数作为默认的 value。该方法一般不会使用字典对象调用(没什么意义),通常会使用 dict 类直接调用。例如如下代码:



版权声明:本文为qq_41728568原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。