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

如何拆分tesseract image_to_string结果为键值对并合并同键数值?

解决方案

不需要用到pandas,用Python基础的字符串处理和字典操作就能轻松实现:

代码实现

import re

input_list = ['Max. Acc +400', 'VER +28', 'VER +10']
result = {}

for item in input_list:
    # 匹配键名和数值部分
    match = re.match(r'(.+?)\s+([+-]\d+)', item)
    if match:
        key_raw, num_str = match.groups()
        # 格式化键名:Max. Acc -> Max ACC
        formatted_key = key_raw.replace('.', '').strip().replace('Acc', 'ACC')
        # 转换数值为整数
        num = int(num_str)
        # 累加相同键的数值
        if formatted_key in result:
            result[formatted_key] += num
        else:
            result[formatted_key] = num

print(result)
# 输出: {'Max ACC': 400, 'VER': 38}

步骤说明

  1. 正则拆分:用正则表达式r'(.+?)\s+([+-]\d+)'精准拆分每个字符串的键名部分和带符号的数值,避免键名包含空格时split出错的问题。
  2. 键名格式化:把Max. Acc处理为Max ACC,通过替换点号、调整大小写实现。
  3. 数值累加:遍历过程中检查键是否已存在,存在则累加数值,不存在则初始化键值对,实现VER的28+10=38的需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 01:14:58