1
我想定义一个接受不同变量作为输入的Python类。然而,我只想在调用类时声明其中的一个,因为变量确定了彼此,并且在不同情况下我手边有不同的输入。因此,它应该是这样一类的价格,我称之为为:改变参数的类
foo = price(dollar=10)
bar = price(euro=20)
和我有采取不同的货币,并将它们转换成对方类中的功能。 我该怎么做?
我想定义一个接受不同变量作为输入的Python类。然而,我只想在调用类时声明其中的一个,因为变量确定了彼此,并且在不同情况下我手边有不同的输入。因此,它应该是这样一类的价格,我称之为为:改变参数的类
foo = price(dollar=10)
bar = price(euro=20)
和我有采取不同的货币,并将它们转换成对方类中的功能。 我该怎么做?
您应该为关键字参数使用字典。这里是你如何在构造函数中定义它:
class Price:
def __init__(self, **kwargs):
if 'dollar' in kwargs and 'euro' in kwargs:
raise Exception(..)
if 'dollar' in kwargs:
self.dollar = kwargs['dollar']
elif 'euro' in kwargs:
self.euro = kwargs['euro']
else:
raise Exception()
你在参数中忘记了'self'。 – 2011-03-18 11:15:44