There is some "best practice" usage in python.
Python's convention to make an instance variable "private" is to add a prefix "double underscore" __ (a _ for protected).
Python performs name mangling of private variables. Every member with double underscore will be changed to _object._class__variable.
If so required, it can still be accessed from outside the class, but the practice should be refrained.
double underscore is fine by me.
In fairness, a CAD library in Python is not advisable. Each to his own.
However, Python is a great medium through which to learn complex stuff.
Protected variables are bad and harmful!