__init__ with multiple list values
Gnarlodious
gnarlodious at gmail.com
Sun Oct 30 11:02:22 EDT 2011
Initializing a list of objects with one value:
class Order:
def __init__(self, ratio):
self.ratio=ratio
def __call__(self):
return self.ratio
ratio=[1, 2, 3, 4, 5]
Orders=[Order(x) for x in ratio]
But now I want to __init__ with 3 values:
class Order:
def __init__(self, ratio, bias, locus):
self.ratio=ratio
self.bias=bias
self.locus=locus
def __call__(self):
return self.ratio, self.bias, self.locus
ratio=[1, 2, 3, 4, 5]
bias=[True, False, True, False, True]
locus=['A', 'B', 'C', 'D', 'E']
Orders=[Order(x,y,z) for x,y,z in [ratio, bias, locus]]
>>> ValueError: too many values to unpack (expected 3)
How to do it?
-- Gnarlie
More information about the Python-list
mailing list