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

第一种方式:使用{}

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值

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python字典对象的创建(9种方式) - Python技术站

(0)
上一篇 2023年3月31日
下一篇 2023年3月31日

相关文章

  • Python实现视频自动打码功能

    我们在观看视频的时候,有时候会出现一些奇怪的马赛克,影响我们的观影体验,那么这些马赛克是如何精确的加上去的呢? 本次我们就来用Python实现对视频自动打码! 准备工作 环境咱们还是使用 Python3.8 和 pycharm2021 即可 实现原理 将视频分为音频和画面; 画面中出现人脸和目标比对,相应人脸进行打码; 处理后的视频添加声音; 模块 手动安装…

    Python开发 2023年4月2日
    00
  • 当我用Python做了个自动工作汇报的脚本后,每天都闲的只能摸鱼

    哈喽兄弟们 之前经常编写Python脚本来进行数据处理、数据传输和模型训练。随着数据量和数据复杂性的增加,运行脚本可能需要一些时间。在等待数据处理完成时可以同时做一些其他工作。 为了达到这个目的,编写了一组用于解决这个问题的Python脚本。使用这些脚本向手机发送流程更新、可视化和完成通知。当偶尔拥有这些自由的时刻,你可以享受而不是担心模型的进度。 一、需要…

    Python开发 2023年4月2日
    00
  • Python生成字母对后写入文件

    一、人生苦短,我用Python 1、案例背景 生成字母对并写入文件,并将结果写入文件中。 文件中每行为: ab cd ef gh 2、主要知识点 文件读写 基础语法 zip 函数 字符串步长截取 3、素材 二、代码展示 创建一个py文件夹 咱们先导入需要用的模块 import platform import string # 我给大家准备了这些资料:Pyth…

    Python开发 2023年4月2日
    00
  • 重温Python基础——字典

    哈喽小伙伴们,今天咱们来复习一下Python基础中的字典,看看还记得多少! 使用字典 在python中,字典是一系列键值对。每个键都与一个值相关联,你可使用键值来访问相关联的值。与键相关联的值可以是数、字符串、列表、乃至字典。其实,可以将任何python对象用作字典的值。在python中字典放在花括号 { } 内的一系列键值对表示例如: a = {“anim…

    Python开发 2023年4月2日
    00
  • 利用PYTHON实现科学占卜

    一直以来,中式占卜都是基于算命先生手工实现,程序繁琐(往往需要沐浴、计算天时、静心等等流程)。准备工作复杂(通常需要铜钱等道具),计算方法复杂,需要纯手工计算二进制并转换为最终的卦象,为了解决这个问题,笔者基于python实现了一套科学算命工具,用于快速进行占卜。 本文的算命方式采用八卦 + 周易+ 梅花易数实现,脚本基于python3.9.0开发。本人对于…

    2023年4月2日
    00
  • 如何用Python将普通视频变成动漫视频

    最近几个月,毒教材被曝光引发争议,那些编写度教材的人着实可恶。咱程序员也没有手绘插画能力,但咱可以借助强大的深度学习模型将视频转动漫。所以今天的目标是让任何具有python语言基本能力的程序员,实现短视频转动漫效果。 效果展示 一、思路流程 读取视频帧 将每一帧图像转为动漫帧 将转换后的动漫帧转为视频 难点在于如何将图像转为动漫效果。这里我们使用基于深度学习…

    Python开发 2023年4月2日
    00
  • 只用13行Python代码,实现给抖音APP自动点赞,非常简单!

    哈喽兄弟们,今天我们来试试,如何只用13行代码,给抖音APP视频自动点赞! 前因后果 事情是这样的,昨晚表弟晚上一两点了,房间灯还亮着,原来是还在用手机刷某音视频,我抢过手机一看,好家伙,连刷十个都是美女,喜欢列表也全是MM。 我看他手动点赞手都点累了,干脆熬个夜,给他写一个自动点赞的代码,今晚他就点一晚上赞,别睡了直接通宵吧! 好了不多哔哔,我们直接上代码…

    Python开发 2023年3月31日
    00
  • 我用Python做了个动图生成器,把一千个MM生成了GIF设置桌面,只为每天愉悦心情

    现在的年轻人都开始每天保温杯里泡枸杞,这怎么能行呢? 想要每天过的好,美女必然少不了,每天看美女,只为了愉悦心情,心情好了,才长寿。 于是怀揣着愉悦心情的想法,我开始制作GIF动图生成器,想要用Python来做成美女壁纸,行动起来。 这个小工具制作的目的是为了将多张图片组合后生成一张动态的GIF图片。设置界面化的操作,只需要将选中的图片导入最后直接生成动态图…

    Python开发 2023年3月31日
    00
合作推广
合作推广
分享本页
返回顶部