← 返回题库
初级

科学计数法

未完成
初级参考 完整示例代码供参考,建议自己理解后重新输入
def solve(s):
    s = str(s)
    if 'E' not in s:
        print(s)
        return
    base, exp = s.split('E')
    exp = int(exp)
    sign = '' if base[0] == '+' else base[0]
    base = base[1:].replace('.', '')
    if exp >= 0:
        if exp >= len(base) - 1:
            result = base + '0' * (exp - len(base) + 1)
        else:
            result = base[:exp + 1] + '.' + base[exp + 1:]
    else:
        result = '0.' + '0' * (-exp - 1) + base
    if '.' in result:
        result = result.rstrip('0').rstrip('.')
    print(sign + result)

示例

输入
solve(+1.23400E-03)
期望输出
0.001234
Python 代码 🔒 登录后使用
🔒

登录后即可练习

注册免费账号,在浏览器中直接运行 Python 代码