当前位置:
首页 > temp > python入门教程 >
-
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值
出处:https://www.cnblogs.com/hahaa/p/17050586.html
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
SQL Server -- 解决存储过程传入参数作为s
关于JS定时器的整理
JS中使用Promise.all控制所有的异步请求都完
js中字符串的方法
import-local执行流程与node模块路径解析流程
检测数据类型的四种方法
js中数组的方法,32种方法
前端操作方法
数据类型
window.localStorage.setItem 和 localStorage.setIte
如何完美解决前端数字计算精度丢失与数