if m.group(0) == '':
    raise ValueError('bad float: %s' % s[pos:])
return float(m.group(0)), pos + m.end()
print(strtod('(a+2.0)/1e-1', 3))
print(strtod('(a+2.0)/1e-1', 8))
Python-эквивалент C++ strtod