使用bash执行脚本时,如何使用argparse解析JSON字符串



我想解析一个JSON字符串,该字符串作为参数提供给python脚本的argparse模块。JSON字符串的内容在bash文件中定义,该文件调用python脚本。我应该如何转义JSON字符串,以便正确解析它?到目前为止,执行bash脚本会抛出一个unrecognized arguments错误。

bash文件定义CONTENT变量并执行python脚本。

CONTENT='"{"argument": 5}"'
python script.py --content $CONTENT

python脚本使用argparse模块来解析字符串,但抛出一个错误。

import json
import argparse

parser = argparse.ArgumentParser()
parser.add_argument("--content", type=str)
args = parser.parse_args()
content = json.loads(args.content)
print(f"Content: {content}")

只需更正shell脚本中的引号:

CONTENT='{"argument": 5}' 
python script.py --content "$CONTENT"

最新更新