Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x Robotframework:如何获取JSON的所有键作为列表_Python 3.x_Api_Automation_Robotframework - Fatal编程技术网

Python 3.x Robotframework:如何获取JSON的所有键作为列表

Python 3.x Robotframework:如何获取JSON的所有键作为列表,python-3.x,api,automation,robotframework,Python 3.x,Api,Automation,Robotframework,有人能告诉我如何在robot框架中获取JSON的所有键作为列表吗 例如: { "api": "rest", "framework": "robot-framework" } 我必须获得属性列表(api、框架)您需要将JSON字符串转换为字典,然后调用字典上的键方法。对于后者,您可以使用内置关键字,或使用 例如: *** Variables *** ${json_string} ... { ... "api": "rest", ...

有人能告诉我如何在robot框架中获取JSON的所有键作为列表吗

例如:

{
   "api": "rest",
   "framework": "robot-framework"
}

我必须获得属性列表(api、框架)

您需要将JSON字符串转换为字典,然后调用字典上的
方法。对于后者,您可以使用内置关键字,或使用

例如:

*** Variables ***
${json_string} 
    ...   {
    ...       "api": "rest",
    ...       "framework": "robot-framework"
    ...   }

*** Test cases ***
Example

    # convert the JSON to a python object
    ${json}=    evaluate    json.loads($json_string)    json

    # get the keys using `call method`
    ${keys}=  call method  ${json}  keys
    should contain  ${keys}  api
    should contain  ${keys}  framework    

    # get the keys using extended variable syntax
    ${keys}=  set variable   ${json.keys()}
    should contain  ${keys}  api
    should contain  ${keys}  framework    

或者,在我使用的集合库中有一个Get Dictionary Keys关键字。它正是你想要的:

${json} =    Convert To Dictionary    ${json}
${list} =    Get Dictionary Keys    ${json}

Log    ${list}    #This should now give you api and framework

非常感谢。。我需要的是,将两个json的所有密钥共享。我有两个长json,我需要知道这两个json的键应该是什么equal@saf:那不是你原来问题的一部分。你问了怎么拿到钥匙,这说明了怎么拿到钥匙。