You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中将E记数字符串转为固定指数-3的浮点数并提取尾数

科学计数法转固定指数(-3)并提取尾数

核心逻辑

  1. 拆分输入字符串的尾数和指数部分
  2. 计算当前指数与目标指数(-3)的差值,通过幂运算调整原尾数,使得新的指数固定为-3
  3. 调整后的尾数即为最终需要提取的结果,对应的浮点数形式为「调整后尾数E-3」

Python 实现代码

def process_scientific_notation(s):
    # 拆分尾数和指数
    mantissa_part, exp_part = s.split('E')
    original_mantissa = float(mantissa_part)
    original_exp = int(exp_part)
    
    # 计算调整后的尾数:原尾数 × 10^(原指数 + 3)
    adjusted_mantissa = original_mantissa * (10 ** (original_exp + 3))
    
    # 生成指数为-3的格式化字符串
    formatted_float = f"{adjusted_mantissa}E-3"
    
    # 可选:若尾数为整数,去掉小数部分的.0
    if adjusted_mantissa.is_integer():
        adjusted_mantissa = int(adjusted_mantissa)
        formatted_float = f"{adjusted_mantissa}E-3"
    
    return adjusted_mantissa, formatted_float

# 测试示例
samples = ["2.89E-6", "9.87E-1", "4.18E-4"]
for sample in samples:
    mantissa, formatted = process_scientific_notation(sample)
    print(f"输入: {sample}")
    print(f"转换后浮点数: {formatted}")
    print(f"提取的尾数: {mantissa}\n")

运行结果

  • 输入2.89E-6 → 转换后浮点数0.00289E-3,提取尾数0.00289
  • 输入9.87E-1 → 转换后浮点数987E-3,提取尾数987
  • 输入4.18E-4 → 转换后浮点数0.418E-3,提取尾数0.418

内容的提问来源于stack exchange,提问作者Sinha

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 17:24:47