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

如何将Python脚本返回的Dictionary转换为Groovy Pipeline中的Map?

解决方法

最简便的方式是让Python输出标准JSON格式,然后用Groovy流水线内置的readJSON步骤直接解析成Map,完全不用自己手动处理字符串。

步骤1:修改Python脚本输出JSON

把原来输出Python字典的代码改成输出JSON字符串,这样能避免Python字典语法(比如单引号、None)和Groovy不兼容的问题。示例代码:

import json

# 生成你的目标字典
my_dictionary = {"name": "test", "count": 5, "enabled": True}
# 输出标准JSON格式内容
print(json.dumps(my_dictionary))

如果脚本里有其他调试打印内容,把这些内容输出到标准错误流(stderr),避免干扰JSON输出:

import sys
print("调试信息,不会被Groovy捕获", file=sys.stderr)

步骤2:Groovy流水线中解析JSON

用sh获取Python脚本的标准输出,再通过readJSON直接转成Groovy Map:

def jsonStr = sh(returnStdout: true, script: 'python pythonScript.py').trim()
def desiredMap = readJSON text: jsonStr

之后你就能像普通Groovy Map一样使用desiredMap,比如desiredMap.name或者desiredMap["count"]。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 05:10:27