标签: ruby hash
我有这样的哈希。
h = {1 => 2, 2 => 3, 5 => 8, 4 => 2, 3 => 3}
我想删除键大于3的项目,如下所示:
h.each{|k,v| p "delete this" if k > 3}
如何删除循环内的项目?或者有更好的方法来删除带条件的项目吗?
答案 0 :(得分:2)
h.each{|k,_| h.delete(k) if k > 3}
或
h.delete_if{|k,_| k > 3}