如何在Python脚本

时间:2015-12-14 06:41:12

标签: python json

我正在用Python编写测试,我在参数中指定JSON sting,如下所示:

json = '...[{"MemberOperand":{"AttributeName":"TEST","Comparison":"=","Value":"Test"}}]...'

在这个例子中我的值为“Test”但是我想用几个值运行测试。你能告诉我怎样才能参数化“价值”的价值?

3 个答案:

答案 0 :(得分:3)

您可以构建适当的JSON:

import json

the_value = 'Test'

data = [{"MemberOperand": {
    "AttributeName":"TEST",
    "Comparison":"=",
    "Value": the_value}
}]

json_text = json.dumps(data)

答案 1 :(得分:1)

这是格式化为字符串的常规字典(嵌套) -

def changer(x):
    import json
    d=json.loads(json.loads(json.dumps('[{"MemberOperand":{"AttributeName":"TEST","Comparison":"=","Value":"Test"}}]')))
    d[0]['MemberOperand']['AttributeName']=x
    return d
print changer('New_TEST')

输出 -

[{'MemberOperand': {'Comparison': '=', 'AttributeName': 'New_TEST', 'Value': 'Test'}}]

答案 2 :(得分:0)

添加函数,该函数始终以提供的值作为参数返回不同的json字符串:

def get_mock_json(value='Test'):
    return '...[{"MemberOperand":{"AttributeName":"TEST","Comparison":"=","Value":%s}}]...'%value


print get_mock_json('test')
print get_mock_json('ttttttest')