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与shell的3种交互方式介绍
Apr 11 Python
python读取oracle函数返回值
Jul 18 Python
利用信号如何监控Django模型对象字段值的变化详解
Nov 27 Python
Python数据结构与算法之图的最短路径(Dijkstra算法)完整实例
Dec 12 Python
Python爬虫爬取一个网页上的图片地址实例代码
Jan 16 Python
python tkinter实现界面切换的示例代码
Jun 14 Python
python实现翻转棋游戏(othello)
Jul 29 Python
python 数据生成excel导出(xlwt,wlsxwrite)代码实例
Aug 23 Python
python3 配置logging日志类的操作
Apr 08 Python
Python enumerate() 函数如何实现索引功能
Jun 29 Python
在CentOS7下安装Python3教程解析
Jul 09 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中的session安全吗?
2016/01/22 PHP
10个对初学者非常有用的PHP技巧
2016/04/06 PHP
PHP单例模式详解及实例代码
2016/12/21 PHP
一个实用的php验证码类
2017/07/06 PHP
php桥接模式应用案例分析
2019/10/23 PHP
document.compatMode介绍
2009/05/21 Javascript
js写出遮罩层登陆框和对联广告并自动跟随滚动条滚动
2014/04/29 Javascript
javascript解析json数据的3种方式
2014/05/08 Javascript
举例讲解jQuery对DOM元素的向上遍历、向下遍历和水平遍历
2016/07/07 Javascript
JavaScript实现简单的四则运算计算器完整实例
2017/04/28 Javascript
Angular实现表单验证功能
2017/11/13 Javascript
vue iView 上传组件之手动上传功能
2018/03/16 Javascript
小程序表单认证布局及验证详解
2020/06/19 Javascript
Electron 打包问题:electron-builder 下载各种依赖出错(推荐)
2020/07/09 Javascript
[01:18]一目了然!DOTA2DotA快捷操作对比第一弹
2014/07/01 DOTA
wxpython中利用线程防止假死的实现方法
2014/08/11 Python
Python读写Excel文件方法介绍
2014/11/22 Python
为Python的Tornado框架配置使用Jinja2模板引擎的方法
2016/06/30 Python
Python线性回归实战分析
2018/02/01 Python
python实现读取大文件并逐行写入另外一个文件
2018/04/19 Python
用Python下载一个网页保存为本地的HTML文件实例
2018/05/21 Python
解决Python2.7中IDLE启动没有反应的问题
2018/11/30 Python
python学生管理系统学习笔记
2019/03/19 Python
python统计函数库scipy.stats的用法解析
2020/02/25 Python
使用CSS3制作倾斜导航条和毛玻璃效果
2017/09/12 HTML / CSS
Html5实现iPhone开机界面示例代码
2013/06/30 HTML / CSS
松下电器美国官方商店:Panasonic美国
2016/10/14 全球购物
英格兰足协官方商店:England Store
2019/07/12 全球购物
超市中秋节活动方案
2014/02/12 职场文书
质量安全标语
2014/06/07 职场文书
安全横幅标语
2014/06/09 职场文书
免职证明样本
2014/10/23 职场文书
药品销售内勤岗位职责
2015/04/13 职场文书
家长反馈意见及建议
2015/06/03 职场文书
2015国庆66周年宣传语
2015/07/14 职场文书
HTML常用标签超详细整理
2022/03/19 HTML / CSS