You could do it like this:
print "Mean Squared Error: ", np.mean((y-func(x, *popt))**2)
ss_res = np.dot((yn - func(x, *popt)),(yn - func(x, *popt)))
ymean = np.mean(yn)
ss_tot = np.dot((yn-ymean),(yn-ymean))
print "Mean R :", 1-ss_res/ss_tot
This is taking the definitions directly, as for example in the wikipedia: http://en.wikipedia.org/wiki/Coefficient_of_determination#Definitions