The OGR Spatial Reference part of GDAL should do the trick. capooti provided an excellent answer to another question which demonstrates how to peform the translation from a shapefile to WKT. You may also want to check out the class reference. The reverse is simply:
from osgeo import osr
srs = osr.SpatialReference()
wkt_text = 'GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",' \
'SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],'\
'UNIT["Degree",0.017453292519943295]]'
srs.importFromWkt(wkt_text)
srs.morphToESRI() # converts the WKT to an ESRI-compatible format
print "ESRI compatible WKT for use as .prj:" % srs.ExportToWkt()