0

我在一个类中有一些代码用于我正在创建的驱动程序,很困惑为什么当 set_voltage 调用 _send_command 时我会收到此错误。以下是导致错误的确切代码:TypeError: _send_command() got multiple values for argument 'value'

    def _send_command(command, value=None, value_type=None, minimum=None, maximum=None):
        if value:
            raise_for_type(value, value_type)
            raise_for_range(value, minimum=minimum, maximum=maximum)
            message = f"{command}{value}"
        else:
            message = command
        self._send(message)
        self.raise_for_system_error()
    def set_voltage(self, voltage: float):
        command = f"SOUR:VOLT:LEV:IMM:AMPL "
        self._send_command(command, value=voltage, value_type=float, minimum=self.VOLT_MIN, maximum=self.VOLT_MAX)
        return percent_error(self.get_voltage(), voltage) < 5
4

1 回答 1

1

您忘记了self类方法所需的参数:

def _send_command(self, command, value=None, value_type=None, minimum=None, maximum=None):
    if value:
        raise_for_type(value, value_type)
        raise_for_range(value, minimum=minimum, maximum=maximum)
        message = f"{command}{value}"
    else:
        message = command
    self._send(message)
    self.raise_for_system_error()
于 2020-06-29T20:47:03.200 回答