連想配列(マップ/ハッシュ/ディクショナリ)から要素をキーで指定して削除するには (unset / del / delete / -)

連想配列(マップ/ハッシュ/ディクショナリ)から要素をキーで指定して削除する方法。

Java map.remove(key1);
Scala val newMap = map - key1;
PHP unset($arr[$key1]);

Java

Signature:

Scala

- という演算子のように書けるメソッドを使う。

Signature:

削除した結果のマップを返し、自身は変更しない。

PHP

unset($arr[$key]);

unset は関数ではなく、言語構造。

unset | PHP Manual
http://php.net/manual/ja/function.unset.php

Python

del文を使う。

del dic[key]

del はメソッドや関数ではなく文である。

The del statement | Python 2.7 documentation
http://docs.python.jp/2/reference/simple_stmts.html#del

The del statement | Python 3 documentation
http://docs.python.jp/3/reference/simple_stmts.html#del

Ruby / JRuby

Hash#delete(key)

hash = {'a' => 10, 'b' => 20, 'c' => 30}

p hash
# => {"a"=>10, "b"=>20, "c"=>30}

hash.delete('b')
p hash
# => {"a"=>10, "c"=>30}

Perl

deleteという関数を利用する。

ハッシュから要素を削除する例

my %data = ('a' => 10, 'b' => 20, 'c' => 30);
print Dumper \%data;
# 出力結果
# $VAR1 = {
#           'c' => 30,
#           'a' => 10,
#           'b' => 20
#         };

delete($data{'b'});
print Dumper \%data;
# 出力結果
# $VAR1 = {
#           'c' => 30,
#           'a' => 10
#         };

ハッシュへのレファレンスから要素を削除する例

my $data = {'a' => 10, 'b' => 20, 'c' => 30};
print Dumper $data;
# 出力結果
# $VAR1 = {
#           'c' => 30,
#           'a' => 10,
#           'b' => 20
#         };

delete($data->{'b'});
print Dumper $data;
# 出力結果
# $VAR1 = {
#           'c' => 30,
#           'a' => 10
#         };
このサイトは筆者(hydrocul)の個人メモの集合です。すべてのページは永遠に未完成です。
スポンサーリンク