找回密码
 加入
搜索
查看: 102592|回复: 162

[原创] AU3之Script.Dictionary字典对象初探

 火... [复制链接]
发表于 2012-12-17 01:53:18 | 显示全部楼层 |阅读模式
本帖最后由 annybaby 于 2012-12-17 11:38 编辑

前几天本来是想去官网找下ward求助的,见他也N久没上,就到处乱逛,无意中看到了他写了一个关联数组的UDF(有些人叫联合数组),搜索论坛,只有几个帖子,再搜本坛,似乎是一篇都没有讨论过,就自己网上找了点资料看看,然后做点笔记,但网易笔记代码着色太麻烦了,所以发在无意义问题区进行一下代码着色~~刚刚无意中发现有位坛友也写了个帖子在那个文本对比效率里,就顺手也贴上来供大家参考,批评~~
姑且挂个原创,各位轻拍哈~~
觉得有一点用的话,记得鼓励下哦~~
为了不影响那些路过的朋友,重新编辑了下,回复可见~~~
游客,如果您要查看本帖隐藏内容请回复



末了,再多说两句:
在应用方面,字典对象法还是非常高效/简单/易用的,虽然比不上用Assign-Isdeclared强悍,但效率也有一半左右,比之遍历二维数组,快了不止N倍(当然是数据量比较大的时候),
如在去重上,可以通过_filereadtoarray读文件到一个数组(或者是使用stringsplit拆分,或者是正则匹配等),然后通过循环,用字典对象的$obj.add方法添加到对象中,然后直接把键值$obj.keys()直接通过_FileWriteFromArray写到文件中去,基本上都是现成的UDF,几句代码就可以了~~
最后温馨提示一下,如果需要改变默认的二进制比较模式的话,应该在对象创建之后,添加数据之前设置,否则不能改变比较模式~~

收工,各位晚安~~~

评分

参与人数 2金钱 +80 贡献 +3 收起 理由
xms77 + 30 + 1 很有用~
afan + 50 + 2 +

查看全部评分

发表于 2012-12-17 10:20:58 | 显示全部楼层
LZ,有心人,
发表于 2012-12-17 13:50:46 | 显示全部楼层
楼主是牛人
发表于 2012-12-17 15:00:51 | 显示全部楼层
LZ 辛苦了 支持
发表于 2012-12-17 16:31:02 | 显示全部楼层
学习下方法,LZ 辛苦
发表于 2012-12-17 19:23:15 | 显示全部楼层
我用vb的时候,文本比较最常用的是“集合”,“字典”速度很慢的。
发表于 2012-12-17 19:50:55 | 显示全部楼层
辛苦了 支持
 楼主| 发表于 2012-12-17 20:22:28 | 显示全部楼层
回复 6# vuivui


    哦?没有找到这个"集合"如何在AU3中应用的相关资料,可以分享下吗?
发表于 2012-12-17 20:41:05 | 显示全部楼层
曾经用过Script.Dictionary字典进行唯一值的统计,看看这里的代码是怎么样的!
发表于 2012-12-17 22:58:53 | 显示全部楼层

标题

回复  vuivui


    哦?没有找到这个"集合"如何在AU3中应用的相关资料,可以分享下吗?
annybaby 发表于 2012-12-17 20:22



    vb的集合应该是自带对象,不是com对象,au3不好引用吧。
 楼主| 发表于 2012-12-17 22:59:47 | 显示全部楼层
回复 10# vuivui


    哦,这样啊??那就是没有多大意义了~~
发表于 2012-12-17 23:11:55 | 显示全部楼层
看看做什么的。。
发表于 2012-12-18 23:34:49 | 显示全部楼层
回复看看教程
发表于 2012-12-19 17:39:50 | 显示全部楼层
看一下。。。
发表于 2012-12-19 18:01:48 | 显示全部楼层
我用vb的时候,文本比较最常用的是“集合”,“字典”速度很慢的。
vuivui 发表于 2012-12-17 19:23



    其实dictionary和set不能用来比较效率,它们的用处也不同。dictionary主要消耗在建树的时候,但是dictionary查找速度是1,set的查找速度是logN。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-16 12:40 , Processed in 0.105735 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表