Pylint false positives
D'Arcy Cain
darcy at VybeNetworks.com
Thu Aug 16 10:54:25 EDT 2018
On 2018-08-14 04:58 AM, Frank Millman wrote:
> "D'Arcy Cain" wrote in message
>> I am also getting a funny smell from your description. Are you sure
>> that you need to redefine the methods? Perhaps you just need to define
>> some class variables and use one method. You can also define your own
>> method and call the classA method inside it for common functionality.
>
> As an example, I have a master class defining a unit of data (i.e. the
> value of a column) retrieved from a database. I have separate
> sub-classes for each data type - text, integer, date, etc. To ensure
> that a value is valid before storing it as an instance attribute, I call
> a method called 'check_value'. The details of check_value vary according
> to the data type, but that is transparent to the piece of code that
> calls check_value().
class classA:
DATATYPE = None # Or default type
def check_value(self, v)
if not isinstance(v, self.DATATYPE):
raise RuntimeError("Invalid data type for '%s'" % v)
class classB(classA):
DATATYPE = int
Very simplistic and untested but does that give you any ideas?
Hopefully your email client doesn't mess up the formatting. You can
fill out check_value to do more than simply check the the type matches
and you can also do further checks based on the type. Also, you can
have more than one sub-class doing the same check without having to cut
and paste code from another class.
--
D'Arcy J.M. Cain
Vybe Networks Inc.
http://www.VybeNetworks.com/
IM:darcy at Vex.Net VoIP: sip:darcy at VybeNetworks.com
More information about the Python-list
mailing list