NURBS-Python 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:
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
Please see the documentation and the wiki pages for details on using the library.