You can do a simple regex substitution:
>>> units = 'munpf'
>>> def f(match):
num = match.group(0)
exp = -3 * (units.index(num[-1]) + 1)
return num[:-1] + '10e' + str(exp)
>>> expr = "(10u*myvar1)+(2.5f*myvar2)/myvar3"
>>> re.sub(r'\b\d+(\.\d*)?' + '[%s]' % units + r'\b', f, expr)
'(10e-6*myvar1)+(2.5e-15*myvar2)/myvar3'
It's easy to extend if you want.