python - 如何在机器人框架中将列表连接到字符串
问题描述
我正在机器人框架中创建一些字符串的 md5 哈希,我想拆分这个哈希并只保留前 32 个字符。
我正在尝试使用列表然后剪切列表,但我无法将列表连接回字符串。这是我的代码:
${test1}= Md 5 ${pwd_arg}
${test3}= Hexdigest
${test4}= Convert To List ${test3}
${test5}= Convert To String ${test4}[0:32]
${test6}= Catenate SEPARATOR= ${test4}
这是日志,基本上我可以剪切列表,但我不能将列表中的所有元素连接回字符串
INFO : ${test3} = 0e5751c026e543b2e8ab2eb06099daa1d1e5df47778f7787faab45cdf12fe3a8
INFO : ${test4} = ['0', 'e', '5', '7', '5', '1', 'c', '0', '2', '6', 'e', '5', '4', '3', 'b', '2', 'e', '8', 'a', 'b', '2', 'e', 'b', '0', '6', '0', '9', '9', 'd', 'a', 'a', '1', 'd', '1', 'e', '5', 'd', 'f', '4', '7',...
INFO : ${test5} = ['0', 'e', '5', '7', '5', '1', 'c', '0', '2', '6', 'e', '5', '4', '3', 'b', '2', 'e', '8', 'a', 'b', '2', 'e', 'b', '0', '6', '0', '9', '9', 'd', 'a', 'a', '1']
INFO : ${test6} = ['0', 'e', '5', '7', '5', '1', 'c', '0', '2', '6', 'e', '5', '4', '3', 'b', '2', 'e', '8', 'a', 'b', '2', 'e', 'b', '0', '6', '0', '9', '9', 'd', 'a', 'a', '1']
FAIL : b1404d6cc07abe3805e5960771c0ba72 != 0e5751c026e543b2e8ab2eb06099daa1d1e5df47778f7787faab45cdf12fe3a8
Ending test
谢谢你的帮助。
解决方案
首先,有一种更简单的方法可以在 robots.txt 中对列表进行切片。而且,Convert to string
不能按照您在代码中的预期方式工作。
以下是实现您要执行的操作的代码:
${test4}= Convert To List ${test3}
${test5}= Get Slice From List ${test4} 0 32
${convertListToString}= Evaluate "".join(${test5})
${test6}= Catenate SEPARATOR= ${convertListToString} ${otherStringToCatenate}
Evaluate "".join(${test5})
将列表转换为字符串,然后您可以使用Catenate
关键字连接到另一个字符串。
推荐阅读
- flutter - Flutter/Dart SVG 字符串路径
- android - 权限对话框未在 android 中显示
- python - 如何使用 Ctypes 和 kernel32.dll 将 Python 脚本添加到注册表
- python-3.x - PYTHON3:打印一组随机整数有时会得到排序输出,有时会得到未排序输出!为什么?
- python - 使用列表项索引作为python中另一个列表的索引
- docker - Docker DNS 忽略主机上的 /etc/nsswitch.conf
- sql - Postgresql数据库中分母最小公倍数的计算
- oracle - SQL 错误:ORA-00904 "SYS"."DBMS_CRYPTO"."HASH": 在 Oracle12C 中更新表时出现无效标识符错误
- clojure - 在clojure中使用变量作为dict键
- curl - 如何在 jenkinsfile 中显示 curl http 返回状态