python中把元组转换为namedtuple方法


Posted in Python onDecember 09, 2020

我们可以把表里每一个横行的数据,看成是不同的元组。在理解了这个概念后,昨天我们学了不少的namedtuple类,是否也能把元组转换成namedtuple呢?当然这是一个尝试,很多小伙伴平时使用的时候会很少用到,而且资料的搜集方面也比较难找。小编也搜集了很久才有收获,本篇就为大家带来元组在python中转换为namedtuple的方法。

之前我们了解了为什么使用namedtuple,现在该学习如何将常规元组和转换为namedtuple了。假设由于某种原因,有包含彩色RGBA值的实例。如果要将其转换为Color namedtuple,则可以按以下步骤进行:

>>> c = {"r": 50, "g": 205, "b": 50, "alpha": alpha}
>>> Color(**c)
>>> Color(r=50, g=205, b=50, alpha=0)

我们可以利用该**结构将包解压缩dict为namedtuple。

元组类似于列表,是一个基于位置的有序对象集合,但是元组一旦创建之后就不能更改,因此列表中修改元素的操作对于元组都不适用。

使用()就可以创建元组,元素之间使用英文逗号,隔开。

num_tuple = (1, 2, 3)
string_tuple = ("a", )

如果我想从dict创建一个namedtupe,如何做?

>>> c = {"r": 50, "g": 205, "b": 50, "alpha": alpha}
>>> Color = namedtuple("Color", c)
>>> Color(**c)
Color(r=50, g=205, b=50, alpha=0)

过将dict实例传递给namedtuple工厂函数,它将为你创建字段。然后,Color像上边的例子一样解压字典c,创建新实例。

运行代码后,就可以把元组转换为namedtuple了。

元组转换为namedtuple实例扩展:

在内部使用namedtuples,但我想保持与提供普通元组的用户的兼容性。

from collections import namedtuple
tuplePi=(1,3.14,"pi") #Normal tuple 
Record=namedtuple("MyNamedTuple", ["ID", "Value", "Name"])
namedE=Record(2, 2.79, "e") #Named tuple
namedPi=Record(tuplePi) #Error
TypeError: __new__() missing 2 required positional arguments: 'Value' and 'Name'
tuplePi.__class__=Record
TypeError: __class__ assignment: only for heap types

到此这篇关于python中把元组转换为namedtuple方法的文章就介绍到这了,更多相关元组在python中如何转换为namedtuple内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python中的闭包实例详解
Aug 29 Python
python中模块的__all__属性详解
Oct 26 Python
Python 解决中文写入Excel时抛异常的问题
May 03 Python
python3实现钉钉消息推送的方法示例
Mar 14 Python
pytorch中如何使用DataLoader对数据集进行批处理的方法
Aug 06 Python
用Python实现二叉树、二叉树非递归遍历及绘制的例子
Aug 09 Python
详解django实现自定义manage命令的扩展
Aug 13 Python
使用Pyhton集合set()实现成果查漏的例子
Nov 24 Python
Python手绘可视化工具cutecharts使用实例
Dec 05 Python
Python综合应用名片管理系统案例详解
Jan 03 Python
Python爬取新型冠状病毒“谣言”新闻进行数据分析
Feb 16 Python
Python图片检索之以图搜图
May 31 Python
python不同版本的_new_不同点总结
Dec 09 #Python
python中_del_还原数据的方法
Dec 09 #Python
call在Python中改进数列的实例讲解
Dec 09 #Python
python中的对数log函数表示及用法
Dec 09 #Python
如何利用python正则表达式匹配版本信息
Dec 09 #Python
python基于win32api实现键盘输入
Dec 09 #Python
用python实现一个简单的验证码
Dec 09 #Python
You might like
PHP全概率运算函数(优化版) Webgame开发必备
2011/07/04 PHP
php无限极分类实现的两种解决方法
2013/04/28 PHP
PHP中overload与override的区别
2017/02/13 PHP
php + WebUploader实现图片批量上传功能
2019/05/06 PHP
Javascript UrlDecode函数代码
2010/01/09 Javascript
几个有趣的Javascript Hack
2010/07/24 Javascript
javascript两种function的定义介绍及区别说明
2013/05/02 Javascript
javascript字母大小写转换的4个函数详解
2014/05/09 Javascript
nodejs开发微博实例
2015/03/25 NodeJs
NodeJs中的VM模块详解
2015/05/06 NodeJs
基于jQuery实现点击弹出层实例代码
2016/01/01 Javascript
浅析js绑定事件的常用方法
2016/05/15 Javascript
微信小程序实现天气预报功能
2018/07/18 Javascript
javascript实现商品图片放大镜
2019/11/28 Javascript
Python实现二分查找算法实例
2015/05/26 Python
Python KMeans聚类问题分析
2018/02/23 Python
Python Numpy库datetime类型的处理详解
2019/07/13 Python
基于python的docx模块处理word和WPS的docx格式文件方式
2020/02/13 Python
django从后台返回html代码的实例
2020/03/11 Python
整理HTML5中表单的常用属性及新属性
2016/02/19 HTML / CSS
韩国三星旗下的一家超市连锁店:Home Plus
2016/07/30 全球购物
乐高积木玩具美国官网:LEGO Shop US
2016/09/16 全球购物
澳大利亚足球鞋和服装购物网站:Ultra Football
2018/10/11 全球购物
应届生高等护理求职信
2013/10/12 职场文书
关于幼儿的自我评价
2013/12/18 职场文书
房屋买卖委托公证书
2014/04/08 职场文书
小学生爱国演讲稿
2014/04/25 职场文书
法语专业求职信
2014/07/20 职场文书
个人四风问题原因分析及整改措施
2014/09/28 职场文书
离婚协议书范文2014
2014/10/16 职场文书
业务员辞职信范文
2015/03/02 职场文书
2015年个人工作总结报告
2015/04/25 职场文书
检讨书范文大全
2015/05/07 职场文书
如何写新闻稿
2015/07/18 职场文书
标准发言稿结尾
2019/07/18 职场文书
分享python函数常见关键字
2022/04/26 Python