CVXOPT only solves (smooth and nonsmooth) convex problems, giving access to several third party convex solvers with guaranteed state of the art worst case complexity. You may pose linear, convex quadratic, linear semidefinite, and many other convex types of constraints.
OpenOpt solves general (smooth and nonsmooth) nonlinear programs, including problems with integer constraints. Unlike CVXOPT, it has no software for solving semidefinite programs. The solvers were all written by Dmitrey Kroshko himself and don't have a long history, so testing was probably limited.
OpenOpt itself does _not- interface to general third party solvers.
However, there is the ''OpenOpt Framework'' (http://openopt.org/OOFramework) that interfaces to IPOPT (mentioned in another comment; it cannot solve nonsmooth problems), CVXOPT, and some other solvers available in Python.
Apart from this interface, there is no relation between these packages. The methods are completely different; the only common things may well be the Python language and the access to LAPACK.
For convex problems, I'd also like to recommend
CVX: Matlab Software for Disciplined Convex Programming
for which the authors obtained this year's very prestigious
Beale-Hays-Orchard Prize for Excellence in Computational Mathematical Programming. It is written in Matlab, though.
They also have a Python ''version'' called CVXPY
http://www.stanford.edu/~ttinoco/cvxpy/, but CVXPY is effectively only a
very nice and useful ''disciplined'' interface to CVXOPT, in which one can make sure that when a program is syntactically correct it is a convex optimization problem.