NURBS-Python (geomdl) is a pure Python object-oriented B-spline and NURBS library with convenient data structures and extensible algorithms. Please check our article on SoftwareX.
Some significant features of NURBS-Python (geomdl):
Please refer to the documentation and the wiki pages for details.
Full circle w/ 9 control points
Unclamped 2-dimensional curve
3-dimensional curve with vectors
Surface with vectors
Bézier decomposition of a cylindrical surface
Torodial surface w/ control points grid