在 Clojure 中,您可以更新映射 (dict)assoc-in
并自动创建密钥路径(如果它不存在)。
(assoc-in {:a 1 :b 3} [:c :d] 33)
{:a 1, :c {:d 33}, :b 3}
相同get-in
:您可以指定键(或列表索引)的路径,nil
如果它不存在,它将返回路径指定的值。
(get-in {:a 1, :c {:d 33}, :b 3} [:c :d])
33
(get-in {:a 1, :c {:d 33}, :b 3} [:c :e])
nil
是否有开箱即用的 Python 等效或类似的快捷方式?(是的,我知道我可以自己编写狡猾的 dict 包装器,但我想避免它)。