关于机器人框架字典列表的问题

问题描述 投票:0回答:1

请让我知道如何解决这个问题

我有一个变量 ${agent} ,它可以是字典列表或字典

例如:[{1:2}] 或简单的 {1:2}

如果变量已经是字典列表,则不执行任何操作,${agent} 保持不变

如果变量类型是字典,则将其转换为字典列表并将其分配回同一个变量

操作前:${agent} = {1:2} 运行后:${agent} =[{1:2}]

我该怎么做? 我尝试了 Set Variable If 和 Run keywords If 并无法找到解决方案

设置变量 If 并运行关键字 If

robotframework
1个回答
0
投票

使用Python的函数

isinstance()
获取其类型,并根据其结果进行对话:

IF    isinstance($agent, dict) 
    ${agent}=   Create List    ${agent}    # create a new variable with the same name - a list, with one member, the old value
END

在这种情况下,

isinstance()
type()
更好,因为它将推进 dict 的子类。

并且

$var
(与
{var}
)是直接访问变量,而不是其值。

© www.soinside.com 2019 - 2024. All rights reserved.