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

Python中如何将形容词字符串(good/bad)转换为对应浮点数?

解决字符串转对应浮点数的问题

我来帮你搞定这个字符串到浮点数的转换问题!核心思路就是用字典映射把good/bad和对应的数值绑定起来,既简洁又好维护,完美适配你后续的加权几何均值计算需求。

具体实现步骤

  • 第一步:定义映射字典,把需要转换的字符串和对应浮点数一一对应:
    score_mapping = {'good': 0.7, 'bad': 0.3}
    
  • 第二步:处理用户输入,这里建议做一下标准化处理(比如转小写、去除前后空格),避免用户输入Good、 BAD这类不标准内容导致转换失败:
    user_input = input("请输入good或bad:").strip().lower()
    
  • 第三步:完成转换,同时加入异常处理,防止用户输入无效内容:
    try:
        converted_score = score_mapping[user_input]
        print(f"转换成功!对应数值为:{converted_score}")
        # 这里直接调用你已经实现的加权几何均值计算函数即可
        # 比如 calculate_weighted_geometric_mean(converted_score, ...)
    except KeyError:
        print("哎呀,输入不对哦!请输入有效的选项:good 或 bad")
    

批量转换的拓展方案

如果你的需求是处理多个输入值(比如一组good/bad的列表),可以用列表推导式快速批量转换:

input_list = ['good', 'bad', 'Good', ' bad ']
# 批量转换并标准化输入
score_list = [score_mapping[item.strip().lower()] for item in input_list]
print(score_list)  # 输出: [0.7, 0.3, 0.7, 0.3]

这个方案的好处是后续要扩展其他选项(比如great对应0.9、terrible对应0.1),只需要修改score_mapping字典就行,不用改动转换逻辑,非常灵活。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 08:57:25