在shell脚本中构建嵌套字典

时间:2016-10-13 10:57:14

标签: python shell dictionary

我的目标是在shell脚本中创建如下所述的字典结构,并将其作为参数传递给python脚本。我可以通过从shell传递所有变量值来在python脚本中构建该字典。实际上,这对我的python脚本来说太多了。

{ 
   "a": "Hello",
   "b": { 
      "c": { 
         "key": "value1"
      }, 
      "d": { 
         "key2": "value2"
      }
   }
}

其中a, b, c, d, key2, key2是存储在不同变量中的字符串值。

有没有办法实现这个目标?

1 个答案:

答案 0 :(得分:0)

您可以使用字典创建一个json文件,并使用argparse传递给python脚本

例如:

import os
import argparse
import json


def execute(json_file):
    if os.path.isfile(json_file):
        with open(json_file) as json_data:
            data = json.load(json_data)
            # here you can process your dictionary data
            print data


parser = argparse.ArgumentParser(description="This script will take json file as argument")
parser.add_argument('json')
arg = parser.parse_args()
json_file = arg.json
execute(json_file)

打开命令shell并输入:

C:\Python27\python.exe argDict.py C:\temp.json