怎么给词典赋值

使用问题 · 695 次浏览
yingsunyabo 创建于 2023-07-22 13:47

需要讲时常变化的内容赋值给词典,然后在词典中取值,尝试了很多办法,都赋值不成功。比如如下场景:

第一天,我需要使用词典功能A:a,我需要运用词典功能,将A的值取出来。多个动作需要用到这个A:a的对应关系。如果有3个动作要用到,那么我需要同时对三个动作的词典进行跟新。

第二天,我需要使用词典功能A:a、B:b,我需要运用词典功能,将A的值取出来或者将B的值取出来。多个动作需要用到这个A:a或B:b的对应关系。如果有3个动作要用到,那么我需要同时对三个动作的词典进行跟新。

有没有什么办法,我想到办法是将A:a、B:b这样的组合直接放到一个TXT文档里面,需要的时候更新TXT文档就行,让三个动作自动去读取TXT文档里面的数据,然后赋值给这三个动作相对于的词典,然后再取值。但是目前没有找到给词典赋予动态值的办法。忘各位大佬指教一二,谢谢!


EC10010 2023-07-22 14:23 :

方法你都已经想出来了,不知道你的难点在哪里。

yingsunyabo 回复 EC10010 2023-07-26 09:11 :

会自己加字符

yingsunyabo 2023-07-26 10:33 :

重新测试了,按照此方法可行了

回复内容
CL 2023-07-22 14:30
#1

用赋值模块,

输入可以为 key:value形式或json。


yingsunyabo 回复 CL 2023-07-22 14:57 :

三个动作同时需要使用同一个词典的话,依然要单独对每个动作的词典进行操作才行。

yingsunyabo 回复 CL 2023-07-22 15:18 :

试过了,会多很多类似于  {"":"     \r\n   "}字符出来,然后词典就没法匹配取值了

CL 回复 yingsunyabo 2023-07-22 15:21 :

这个估计只是显示为文本情况下自动转换为json格式的原因。 词典没法匹配是什么意思?

yingsunyabo 回复 CL 2023-07-26 09:10 :

我做了如下测试,第一是读取TXT文档里面的内容后,给个弹窗提示内容,出来是正常的A:a、B:b,然后赋值给词典,再来个弹窗提示内容,出来的  {"":"  A:a\r\nB:b   "}也就是说,赋值词典之后,词典里面的内容不是A:a、B:b这样的标准格式,而是{"":"  A:a\r\nB:b   "}加了字符的内容了。

CL 回复 yingsunyabo 2023-07-26 09:40 :

词典在以文本方式显示的时候,会自动转换成json格式。这只是它显示的时候用的,不代表它内部是这种格式存储的。

在内部它是另外的格式存储的。

yingsunyabo 回复 CL 2023-07-26 10:28 :

但是按照格式赋值之后,进行取值,就是显示失败

CL 回复 yingsunyabo 2023-07-26 10:29 :

请调试运行动作,上传调试文件并发送调试文件链接,并说明不符合预期的步骤。

yingsunyabo 回复 CL 2023-07-26 10:33 :

今天测试了,按照这个方法,不报错了。谢谢

yingsunyabo 回复 CL 2023-07-26 10:34 :

重新写了步骤之后可以执行了,谢谢

乐昂岚【接定制】 回复 CL 2023-07-26 10:47 :

我在3楼回复算不算个bug

CL 2023-07-22 15:02
#2
回复 yingsunyabo :

三个动作同时需要使用同一个词典的话,依然要单独对每个动作的词典进行操作才行。

可以用读取文件,只要文件内容的格式符合要求,可以直接读取到词典变量


搞个多字段表单手动调整词典数据,如下面这个动作

https://getquicker.net/Sharedaction?code=d7a0d237-c663-4daa-b322-08daf823c549

这是词典变量


这是修改词典数据的多字段表单



乐昂岚【接定制】 最后更新于 2023-07-26 09:27

因为同一个字典的内容有多个动作需要用到,所以不想手动取值

今天测试了,按照此方法操作,不会报错了

发现一个好玩的还能很轻松解决你的问题

不知道算不算个bug 

CL 回复 乐昂岚【接定制】 2023-07-26 10:49 :

正常的,文本格式显示词典的时候是转换成json显示的。

已经解决这个麻烦了,谢谢

回复主贴