return an object of a different class
spam at uce.gov
spam at uce.gov
Tue Feb 15 21:23:39 EST 2011
How can I do something like this in python:
#!/usr/bin/python3.1
class MyNumbers:
def __init__(self, n):
self.original_value = n
if n <= 100:
self = SmallNumers(self)
else:
self = BigNumbers(self)
class SmallNumbers:
def __init__(self, n):
self.size = 'small'
class BigNumbers:
def __init__(self, n):
self.size = 'big'
t = MyNumbers(200)
When I do type(t) it says MyNumbers, while I'd want it to be BigNumbers,
because BigNumbers and SmallNumbers will have different methods etc...
Do I need to use metaclasses?
Thanks.
--
Yves. http://www.SollerS.ca/
http://blog.zioup.org/
More information about the Python-list
mailing list