Jan-08-2021, 05:41 PM
Hello,
I need to transform a string like "Name1:Val1|Name2:Val2" to a JSON like [{'name': 'Name1', 'value': 'Val1', 'status': 'Passed'}, {'name': 'Name2', 'value': 'Val2', 'status': 'Passed'}].
When I run my code the result is [{'name': 'Name2', 'value': 'Val2', 'status': 'Passed'}, {'name': 'Name2', 'value': 'Val2', 'status': 'Passed'}].
I get {'name': 'Name1', 'value': 'Val1', 'status': 'Passed'} from the first loop execution. But it the second loop it is replaced by {'name': 'Name2', 'value': 'Val2', 'status': 'Passed'}.
My code is:
Thanks for your help.
I need to transform a string like "Name1:Val1|Name2:Val2" to a JSON like [{'name': 'Name1', 'value': 'Val1', 'status': 'Passed'}, {'name': 'Name2', 'value': 'Val2', 'status': 'Passed'}].
When I run my code the result is [{'name': 'Name2', 'value': 'Val2', 'status': 'Passed'}, {'name': 'Name2', 'value': 'Val2', 'status': 'Passed'}].
I get {'name': 'Name1', 'value': 'Val1', 'status': 'Passed'} from the first loop execution. But it the second loop it is replaced by {'name': 'Name2', 'value': 'Val2', 'status': 'Passed'}.
My code is:
import json group={} tests=[] currentdata={} str="Name1:Val1|Name2:Val2" print(str) print("------------------------------") splitstr=str.split("|") print(splitstr) print("------------------------------") for dataset in splitstr: data=dataset.split(":") currentdata["name"]=data[0] currentdata["value"]=data[1] currentdata["status"]="Passed" tests.append(currentdata) print(data) print(data[0]) print(data[1]) print(currentdata) print(tests) print("------------------------------")The output is:
Output:Name1:Val1|Name2:Val2
------------------------------
['Name1:Val1', 'Name2:Val2']
------------------------------
['Name1', 'Val1']
Name1
Val1
{'name': 'Name1', 'value': 'Val1', 'status': 'Passed'}
[{'name': 'Name1', 'value': 'Val1', 'status': 'Passed'}]
------------------------------
['Name2', 'Val2']
Name2
Val2
{'name': 'Name2', 'value': 'Val2', 'status': 'Passed'}
[{'name': 'Name2', 'value': 'Val2', 'status': 'Passed'}, {'name': 'Name2', 'value': 'Val2', 'status': 'Passed'}]
------------------------------Thanks for your help.