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读写ini文件示例(python读写文件)
Mar 25 Python
Python和php通信乱码问题解决方法
Apr 15 Python
python中反射用法实例
Mar 27 Python
Python 3.x 安装opencv+opencv_contrib的操作方法
Apr 02 Python
基于scrapy的redis安装和配置方法
Jun 13 Python
Python3爬虫学习入门教程
Dec 11 Python
python实现简单多人聊天室
Dec 11 Python
pytorch permute维度转换方法
Dec 14 Python
Python3.5 Json与pickle实现数据序列化与反序列化操作示例
Apr 29 Python
python3 tkinter实现点击一个按钮跳出另一个窗口的方法
Jun 13 Python
pytorch 共享参数的示例
Aug 17 Python
给你一面国旗 教你用python画中国国旗
Sep 24 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 静态页面中显示动态内容
2009/08/14 PHP
PHP读取网页文件内容的实现代码(fopen,curl等)
2011/06/23 PHP
解析PHP中$_FILES的使用以及注意事项
2013/07/05 PHP
PHP递归统计系统中代码行数
2019/09/19 PHP
利用NodeJS的子进程(child_process)调用系统命令的方法分享
2013/06/05 NodeJs
JavaScript中圆括号()和方括号[]的特殊用法疑问解答
2013/08/06 Javascript
图片翻转效果具体实现代码
2014/01/09 Javascript
js弹出div并显示遮罩层
2014/02/12 Javascript
JS实现漂亮的淡蓝色滑动门效果代码
2015/09/23 Javascript
jQuery动态生成表格及右键菜单功能示例
2017/01/13 Javascript
微信小程序返回多级页面的实现方法
2017/10/27 Javascript
node.js express捕获全局异常的三种方法实例分析
2019/12/27 Javascript
使用webpack搭建pixi.js开发环境
2020/02/12 Javascript
Angular 多模块项目构建过程
2020/02/13 Javascript
微信小程序仿通讯录功能
2020/04/09 Javascript
微信小程序订阅消息(java后端实现)开发
2020/06/01 Javascript
Vue.js中使用Vuex实现组件数据共享案例
2020/07/31 Javascript
Vue实现购物车基本功能
2020/11/08 Javascript
[50:15]VP vs Mineski 2018国际邀请赛淘汰赛BO3 第二场 8.22
2018/08/23 DOTA
PyCharm2019安装教程及其使用(图文教程)
2019/09/29 Python
基于Python和PyYAML读取yaml配置文件数据
2020/01/13 Python
基于Python共轭梯度法与最速下降法之间的对比
2020/04/02 Python
jupyter notebook读取/导出文件/图片实例
2020/04/16 Python
python的launcher用法知识点总结
2020/08/07 Python
Python绘图实现台风路径可视化代码实例
2020/10/23 Python
Python+unittest+requests+excel实现接口自动化测试框架
2020/12/23 Python
学院领导推荐信
2013/10/30 职场文书
医学专业应届生的自我评价
2014/02/28 职场文书
党员公开承诺书和承诺事项
2014/03/25 职场文书
校园文明倡议书
2014/05/16 职场文书
运动会口号8字
2014/06/07 职场文书
2014年个人工作总结报告
2014/11/27 职场文书
2015年个人实习工作总结
2014/12/12 职场文书
转让协议书
2015/01/27 职场文书
导游词之五台山
2019/10/11 职场文书
用python修改excel表某一列内容的操作方法
2021/06/11 Python