dict get 命令可能引發錯誤

set alpha {a 1 b 2 c 3}
dict get $alpha b
# => 2
dict get $alpha d
# (ERROR) key "d" not known in dictionary

如果 dict get 用於檢索缺失鍵的值,則會引發錯誤。要防止錯誤,請使用 dict exists

if {[dict exists $alpha $key]} {
    set result [dict get $alpha $key]
} else {
    # code to deal with missing key
}

如何處理丟失的金鑰當然取決於具體情況:一種簡單的方法是將 result 設定為預設的值。

如果程式碼從不嘗試檢索字典中的其他鍵,dict get 當然不會失敗。但是對於任意鍵,dict get 是一個需要保護的操作。最好通過 dict exists 測試,雖然異常捕獲也會起作用。