Tcl字典遍历

假设有如下字典:

set dic [dict create a 1 b 2 c 3 d 4]

 有五种字典遍历的方式:

1.foreach与dict keysdict get结合通过键遍历字典。

foreach key [dict keys $dic] {
    puts "$key--[dict get $dic $key]"
}

2.foreach与dict values结合只遍历字典值。

foreach value [dict values $dic] {
    puts $value
}

3.dict for遍历字典。

dict for {key value} $dic {
    puts "$key--$value"
}

4.dcit map,Tcl8.6新增的命令,遍历字典并执行指定的命令,会返回新的字典。

set newDic [dict map { k v } $dic {
    puts "$k--$v"
    set k $k$k;
    set v $v;
}]
puts $newDic

5.dict filter,遍历字典并按指定过滤类型与规则进行过滤,返回新的字典。

dict filter $dic key a*
dict filter $dic value *4
dict filter $dic script {k v} {
    puts "$k--$v"
    expr {$v<3}
}
  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值