You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

RobotFramework中list_of_dicts遍历输出异常及索引创建问题

问题原因与解决方法

现象原因

你遇到的问题核心在于@{list_of_dicts}的定义方式:

  • 你用了RobotFramework的嵌入式表达式${{ ... }},它会把整个列表表达式[{'name': 'Alice', 'age': 25}, {'name': 'Bob', 'age': 30}]的结果作为单个元素存入@{list_of_dicts}。也就是说,这个列表变量实际上只包含1个元素——就是那个包含两个字典的大列表,所以遍历的时候自然只会输出这个整体。
  • 对比@{PeopleDictList},它是直接将&{Person1}、&{Person2}作为独立元素添加到列表中,所以是正常的多元素列表,遍历能逐个输出元素。

解决方法

方法一:修正变量定义(推荐)

直接去掉嵌入式表达式,用RobotFramework原生的列表语法定义,把每个字典作为独立元素:

** Variables **
@{list_of_dicts}    {'name': 'Alice', 'age': 25}    {'name': 'Bob', 'age': 30}

这样@{list_of_dicts}就会成为包含两个字典元素的列表,原有的FOR循环就能正常逐个输出每个字典。

方法二:遍历展开嵌套列表(不修改变量定义时用)

如果不想改动变量定义,可以在遍历的时候,直接访问@{list_of_dicts}中唯一的元素(也就是目标列表),并展开它的元素:

FOR  ${person}  IN  @{list_of_dicts[0]}
    Log to console    ${person}     
END

或者用嵌入式表达式直接展开:

FOR  ${person}  IN  ${{ @{list_of_dicts}[0] }}
    Log to console    ${person}     
END

内容的提问来源于stack exchange,提问作者Programmer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.11 13:03:19