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

Python中如何将含加法运算的字符串转换为float类型?

解决方法

直接用astype(np.float)无法转换带运算表达式的字符串,得先计算出表达式结果再转成浮点数,给你两种实用方案:

  • 方案一:用eval快速计算(适合数据可信的场景)
    利用Pandas的apply方法对每个单元格执行eval,直接算出加法结果:

    import pandas as pd
    import numpy as np
    
    # 假设你的DataFrame已读取完成
    df['ScreenSize'] = df['ScreenSize'].apply(eval).astype(np.float)
    

    注意:如果数据来源不可信,不要用eval,避免代码注入风险。

  • 方案二:手动拆分计算(更安全)
    把字符串按+拆分,去除数字前后的空格后转成浮点数再求和,彻底规避eval的安全隐患:

    def calculate_total(s):
        nums = s.split('+')
        return sum(float(num.strip()) for num in nums)
    
    df['ScreenSize'] = df['ScreenSize'].apply(calculate_total).astype(np.float)
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 17:06:59