首页IT科技用python创建字典(Python字典对象的创建(9种方式))

用python创建字典(Python字典对象的创建(9种方式))

时间2025-07-30 12:23:22分类IT科技浏览4188
导读:firstDict = {...

firstDict = {"name": "wang yuan wai ", "age" : 25}

说明:{}为创建一个空的字典对象

第二种方式:使用fromkeys()方法

second_dict = dict.fromkeys(("name", "age")) #value使用默认的None,也可以指定value值

说明:fromkeys()是dict类的一个staticmethod(静态方法)

第三种方式:使用dict的构造方法              ,参数为关键字参数

thirdDict = dict(name = "yuan wai", age = 30) #利用dict的构造方法 传入字典参数

第四种方式:使用dict的构造方法                     ,参数为嵌套元组的list

tuple_list =[("name", "wang yuan wai"), ("age", 30)] my_dict = dict(tuple_list)

说明:传入的list结构是有要求的       ,list的每个元素都是一个两个元素的tuple

第五种方式:使用dict的构造方法              ,参数为zip()函数的返回值

fifthDict = dict(zip("abc",[1,2,3]))

第六种方式:使用dict的初始化方法                     ,参数为字典对象

e = dict({three: 3, one: 1, two: 2})

第七种方式:使用字典解析式

sixthDict = {char : char* 2 for char in "TEMP"}

创建字典的方式(官方文档介绍)

以下示例返回的字典均等于 {“one              ”: 1, “two                     ”: 2, “three       ”: 3}

>>> a = dict(one=1, two=2, three=3) >>> b = {one: 1, two: 2, three: 3} >>> c = dict(zip([one, two, three], [1, 2, 3])) >>> d = dict([(two, 2), (one, 1), (three, 3)]) >>> e = dict({three: 3, one: 1, two: 2}) >>> a == b == c == d == e True

第八种方式:使用字典的copy()方法(浅复制)创建一个新的字典对象

>>> hold_list=[1,2,3] >>> old_dict={"num":hold_list} >>> new_dict=old_dict.copy() >>> id(old_dict["num"]) 2141756678856 >>> id(new_dict["num"]) 2141756678856

浅复制:old_dict与new_dict持有的是同一个hold_list对象       ,你明白了吗?注意看id值

第九种方式:使用copy模块的deepcopy()函数(深复制)创建一个新的字典对象

>>> from copy import deepcopy >>> hold_list=[1,2] >>> old_dict={"num":hold_list} >>> new_dict=deepcopy(old_dict) >>> id(old_dict["num"]) 2141787030152 >>> id(new_dict["num"]) 2141787012040 # Python学习交流群 708525271

深复制:new_dict持有的也是一个新创建的host_list对象       ,你明白了吗?注意看id值

声明:本站所有文章                     ,如无特殊说明或标注              ,均为本站原创发布              。任何个人或组织       ,在未征得本站同意时                     ,禁止复制              、盗用                     、采集       、发布本站内容到任何网站       、书籍等各类媒体平台                     。如若本站内容侵犯了原著者的合法权益              ,可联系我们进行处理       。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
360重装系统怎么操作(360重装系统好用吗) js判断符号(JavaScript 条件判断与比较运算)