python - 改变参数的类

标签 python

我想定义一个接受不同变量作为输入的 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()

关于python - 改变参数的类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5351069/

相关文章:

python - 在 python 中,如何创建相互迭代的两列?

javascript - AngularJS:页面加载时使用服务器数据更改输入值

python - 如何在棉花糖中设置 Int 字段的下限

c# - XmlRpcResponse 序列化到 c# 对象

python - 在 wsgi.py 中无法访问环境变量

python - 如何更改默认 Anaconda python 环境

以@开头的python行

python - 查找组中添加的所有用户(reply_channels)(Django channel )

python - 为什么代码更改时自动重新加载仅用于使用 Gunicorn 进行调试?

python - 错误: list index out of range