我可以用`namedtuple`给一个一维数组的元素命名吗?

问题描述 投票:0回答:1

res.x 是我通过优化目标函数得到的一个数组,我想把这个数组命名为 命名 以便我以后可以更方便地使用它们。我最初的想法是用 namedtuple但显然Python只会将数组作为第一个参数,并报告其余部分丢失。有什么办法吗?谁能帮帮我?

from collections import namedtuple

Coef = namedtuple("Coefficients", ["alpha","beta","gamma"])
t = Coef(res.x)

回溯 (最近一次调用)。

文件 "< stdin >",第 1 行,在 < 模块 >

TypeError: __new__() 缺少 2 个所需的位置参数:'beta', 'gamma'。

python arrays arguments namedtuple
1个回答
1
投票
from collections import namedtuple

Coef = namedtuple("Coefficients", ["alpha","beta","gamma"])
t = Coef(*res.x)

通过将一个 * 在列表前面,python将把数组分成三个不同的参数。

© www.soinside.com 2019 - 2024. All rights reserved.