Ruby - 从哈希中删除元素

Sim*_*ity 1 ruby hash

我有以下哈希:

my_info = {'first_name' => 'xyz', 'last_name' => 'mnl', 'age' => 27}
Run Code Online (Sandbox Code Playgroud)

当我尝试删除age密钥时,如下所示:

my_info.delete['age']
Run Code Online (Sandbox Code Playgroud)

我得到以下内容:

r.rb:5:in `delete': wrong number of arguments (0 for 1) (ArgumentError)
        from r.rb:5
Run Code Online (Sandbox Code Playgroud)

这是为什么?

谢谢.

Dan*_*nne 16

原因是因为delete是一种方法所以你必须使用括号,如下所示:

my_info.delete('age')
Run Code Online (Sandbox Code Playgroud)