<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def setValue(self, prop, value, unit=None):
 """Set the value of feature with that name."""


        if isinstance(value, int) or isinstance(value, float):
            if prop in self.props:
                for i, j in [(0, 1), (1, 0)]:
                    if self.props[prop][i] is None:
                        self.props[prop] = (self.props[prop][j], self.props[prop][j])
                for v in self.props[prop]:
                    v.value, v.unit = value, unit
            else:
                f = Feature(prop, "=", value, unit=unit)
                self.props[prop] = (f, f)
        elif prop in self.props:
            self.props[prop].value, self.props[prop].unit = value, unit
        else:
            self.props[prop] = Feature(prop, "=", value, unit=unit)