tcl

2015-10-27 77 views
0

一次代替幾個值我有一個字典與幾個元素。我想一次替換幾個值。tcl

這是它是如何工作:

proc myproc {param} { 


     set tempDict [dict replace $param "fd" "gfdgfdgf"] 
     set tempDict2 [dict replace $tempDict "fds" "gfdgf"] 
     set tempDict3 [dict replace $tempDict2 "fsdf" "gdfg7"] 
     set tempDict4 [dict replace $tempDict3 "ztrzrt" "gdfgf"] 

     puts "\n" 
     puts $tempDict4 

    } 

什麼是做到這一點的正確方法?我理解文檔的方式,dict replace返回修改字典的副本。但是我的代碼肯定不能做到這一點。

回答

1

您可以附加多個鍵/值對。

% set d [ dict create user dinesh age 25 ] 
user dinesh age 25 
% set d [dict replace $d user Rajesh age 29] 
user Rajesh age 29 
% 
1

看看dict merge命令。最後指定字典的值將優先:

% dict merge {a 1 b 2} {a 11 c 33} 
a 11 b 2 c 33