NEWBIE: What's the instance name?
danb_83 at yahoo.com
Mon Dec 29 09:36:09 CET 2003
engsolnom at ipns.com wrote in message news:<6q2vuv45lsah3epo9loa7l2tp9517makk4 at 4ax.com>...
> I've been using constructs(?) like the below.
> def display(instance, start = None, end = None):
> if instance.__class__.__name__ == 'UPCA':
You might want to try the isinstance function.
> do some UPCA stuff
> if instance.__class__.__name__ == 'UPCE':
> do some UPCE stuff
> launched by:
> lx = UPCA(sx), where sx is a string
> This all works well.
> What I'd like to do is display is the instance name. Is it hiding
You mean you'd like display(lx) to print "lx"?
What would you expect the folowing code to do?
a = b = MyClass()
display(a) # "a" or "b"?
display(a + b) # Creates an instance without a name.
display(2) # Literals have no names either.
Now do you see why the functionality you want isn't implemented?
> Also, if I have a string 4 chars long, representing two bytes of hex,
> how can I *validate* the string as a *legal* hex string?
> isdigit works until string = '001A', for example
> isalnum works, but then allows 'foob'
> Is there a 'ishexdigit'? I could parse the string, but that seems
Unfortunately, no, but you can use "ch in string.hexdigits", at least
until Python 3.0 (or whenever the string module is going away).
More information about the Python-list