python中把元组转换为namedtuple方法

 更新时间:2020年12月09日 15:45:24   作者:小妮浅浅  
在本篇文章里小编给大家整理的是一篇关于python中把元组转换为namedtuple方法,有兴趣的朋友们可以参考下。

我们可以把表里每一个横行的数据,看成是不同的元组。在理解了这个概念后,昨天我们学了不少的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循环结构详解

    这篇文章主要介绍了Python循环结构详解,文中有非常详细的代码示例,对正在学习python的小伙伴们有很好的帮助,需要的朋友可以参考下
    2021-05-05
  • 总结分析python数据化运营关联规则

    总结分析python数据化运营关联规则

    本文内容主要介绍了python数据化运营中关联规则的一般应用场景,以及关联规则的实现,并例举了适应的应用示例,方便大家更直观的理解应用
    2021-08-08
  • Python彩色化Linux的命令行终端界面的代码实例分享

    Python彩色化Linux的命令行终端界面的代码实例分享

    美化Linux的terminal终端显示的方法多种多样,这里我们给出一个利用Python彩色化Linux的命令行终端界面的代码实例分享,包括一个Linux下简便执行Python程序的方法,需要的朋友可以参考下
    2016-07-07
  • 在Python的struct模块中进行数据格式转换的方法

    在Python的struct模块中进行数据格式转换的方法

    这篇文章主要介绍了在Python的struct模块中进行数据格式转换的方法,文中还给出了C语言和Python语言的数据类型比较,需要的朋友可以参考下
    2015-06-06
  • python 地图经纬度转换、纠偏的实例代码

    python 地图经纬度转换、纠偏的实例代码

    这篇文章主要介绍了python 地图经纬度转换、纠偏的实例代码,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-08-08
  • Python操作MySQL的方法详细解读

    Python操作MySQL的方法详细解读

    这篇文章主要介绍了Python操作MySQL的方法详细解读,在Python中,通过使用第三方库:pymysql,完成对MySQL数据库的操作,Python操作MySQL并不难,难点是如何编写合适的SQL语句,需要的朋友可以参考下
    2023-11-11
  • 详解python架构 PyNeuraLogic超越Transformers

    详解python架构 PyNeuraLogic超越Transformers

    这篇文章主要为大家介绍了python使用 PyNeuraLogic超越Transformers示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03
  • 基于Python+QT的gui程序开发实现

    基于Python+QT的gui程序开发实现

    这篇文章主要介绍了基于Python+QT的gui程序开发实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • wxPython实现文本框基础组件

    wxPython实现文本框基础组件

    这篇文章主要介绍了wxPython实现文本框基础组件,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-11-11
  • python3中超级好用的日志模块-loguru模块使用详解

    python3中超级好用的日志模块-loguru模块使用详解

    loguru默认的输出格式是上面的内容,有时间、级别、模块名、行号以及日志信息,不需要手动创建 logger,直接使用即可,另外其输出还是彩色的,看起来会更加友好,这篇文章主要介绍了python3中超级好用的日志模块-loguru模块使用详解,需要的朋友可以参考下
    2022-11-11

最新评论