You can use format strings if you want, but be aware that you might need to set your desired precision, as format strings have their own logic for this by default. Janneb suggests a precision of 17 in another answer.
'{:g}'.format(float(your_string_goes_here))
After thinking about this some more, though, I think the simplest and best solution is just to cast the string twice (as jathanism suggests):
str(float(your_string_goes_here))
Edit: Added clarification because of comment.