【问题标题】:How to create a tuple of the given structure in python [closed]如何在python中创建给定结构的元组[关闭]
【发布时间】:2022-01-24 04:27:23
【问题描述】:

我从python中的函数调用得到以下结构:

(Status(message='Success', code=0), [[]])

使用type 函数,我可以看到它是一个元组。 但是,我不确定这里的Statusmessage 或方括号是什么意思。

我想知道如何在python中重新创建这样的结构。

【问题讨论】:

  • 元组中的信息是什么?
  • 为什么很奇怪?如果你能详细说明什么让你感到困惑,那么有人可能会向你解释。
  • 它是一个 2 元组,包含一个 Status 对象和一个包含空列表的列表。这并不奇怪。
  • 元组是内置的序列数据类型之一。最常见的是,您可以通过在圆括号(1, "foobar", ["a", "list"]) 中列出项目来创建它。如果只有一项,您必须设置可选列表逗号以区别于通常的括号,例如(1,).

标签: python


【解决方案1】:

它本质上是另一个元组中的命名元组。命名元组是创建类的简单方法。您可以按如下方式创建该结构。

>>> from collections import namedtuple
>>> Status = namedtuple('Status', 'message code')
>>> s = Status('Success', 0)
>>> s
Status(message='Success', code=0)
>>> (s, [[]])
(Status(message='Success', code=0), [[]])

namedtuple 的文档是 here

【讨论】:

  • Status 对象可能是(我们不知道,它也可能是 dataclass 甚至是普通类)namedtuple 但外部结构是一个正则元组。
猜你喜欢
  • 1970-01-01
  • 2023-04-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-04-08
  • 1970-01-01
  • 2012-03-09
  • 2010-09-05
相关资源
最近更新 更多