Message 91033 - Python tracker
Since you're calling int() on the result, can't this code:
self._int = str(int((intpart+fracpart).lstrip('0') or '0'))
just be:
self._int = str(int(intpart+fracpart))
?
And here, you already know diag is not None, so do you need the "or '0'"
part?
self._int = str(int(diag or '0')).lstrip('0')
And, in both calls to .lstrip('0'), what happens if you have a
non-European leading '0', like '\uff10'?
Otherwise, the patch looks good to me.