我想在内部使用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
您可以使用
*args
调用语法:这将把
tuplePi
序列的每个元素作为单独的参数传入。您还可以使用^{} class method 将任何序列转换为实例:
演示:
相关问题 更多 >
编程相关推荐