我正在查询数据库并想验证我的输出。来自 DB 的结果以 -> (('ABC',),)
的方式出现,我想用字符串"ABC"验证它,但由于我的数据库输出中收到额外的字符,我无法
任何人都可以帮助我如何删除从数据库输出的额外字符吗?
我尝试使用评估功能:
Evaluate '(('ABC',),)'.replace('(',' ')
我需要的结果只是ABC。
不要这样做 - 将响应视为字符串,并尝试通过字符串替换来获取数据。
响应是一个对象 - 一个元组列表,它实际上看起来像这样:
[('ABC',),]
列表中的每个元组都是响应行;元组的每个成员都是该行中的一列。
要获取第一行的第一列,您只需解决它们(它们的索引从 0 开始):
${value}= Set Variable ${the response object}[0][0]
例如,如果查询返回 3 行,每行有 2 列:
[('ABC', 'DEF'), ('GHI', 'JKL'), ('MNO', 'PQR')]
,你会得到第 3 行的(索引:2)第二列(索引:1) - 字符串"PQR" - 带有这个:
${value}= Set Variable ${the response object}[2][1]
现在我希望你明白为什么使用字符串替换(在二维列表的字符串表示上)不是一个好主意。