带有工厂风格构造函数的namedtuple

时间:2017-08-23 01:09:50

标签: python

我有一个可以用于两个不同目的的命名元组:

IODataTuple = namedtuple('IODataTuple', ['network_io', 'disk_io'])

我想为不同类型的元组创建两种不同的工厂方法。将它们放在类似的课程中是一种好习惯吗?

class IOData(object):
  @staticmethod
  def network_data(network_io):
    return IODataTuple(network_io, None)
  @staticmethod
  def disk_data(disk_io):
    return IODataTuple(None, disk_io)

或者这种模式非pythonic ?也许只保留两个单独的方法,而不是他们在一个类?

0 个答案:

没有答案