【问题标题】:Which package to require to use TCL dictionaries?使用 TCL 词典需要哪个包?
【发布时间】:2012-12-28 19:26:29
【问题描述】:

我正在尝试使用 Tcl dict 数据结构:

http://www.tcl.tk/man/tcl/TclCmd/dict.htm

但是当我尝试运行我的脚本时,脚本会显示以下错误:

invalid command name "dict"

我相信这是由于我没有包含任何 Tcl 包造成的。我需要哪些软件包才能使用 Tcl dict?

谢谢

【问题讨论】:

  • 您使用的是 tcl 8.5 还是更新版本? tclsh 或 wish 中info tclversion 的输出是什么?

标签: tcl


【解决方案1】:

要么使用 Tcl 8.5(将 package require Tcl 8.5 放在脚本顶部以使它们快速失败),要么使用第三方 dict package for Tcl 8.4(通过添加 package require dict),它基于大部分dict 在 8.5 中实现。

dict 包不如 8.5 中的代码快(因为它缺乏 Tcl 字节码引擎的支持),并且 IIRC 也不执行强制订单维护。如果可以的话,我真的建议您升级到 Tcl 8.5。 (一方面,8.4 即将结束其扩展支持生命周期。)

【讨论】:

  • 另外,如果您使用的是 Tcl 8.3 或之前版本,请立即升级。 拜托! 完全不支持 dict 命令旧版本(以及呈现类似界面的脚本非常缓慢)。
【解决方案2】:

package require Tcl 8.5dict 命令是在 8.5 中添加的。添加这样的一行将确保您的脚本预先说明其版本要求。

【讨论】:

    【解决方案3】:

    如果您使用 Active state TCL 套件,请使用“teacup install dict”命令从 active state lib 加载 dict 包。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-01-28
      • 2012-09-02
      • 1970-01-01
      • 1970-01-01
      • 2017-12-03
      • 2015-10-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多