![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
ふと疑問に思ったのですが通常、ハッシュを追加する方法は
my %hash = (
'キー1' => '値1',
'キー2' => '値2',
'キー3' => '値3',
);
$hash{'キー4'} = '値4';
$hash{'キー5'} = '値5';
とするか
my %hash = (
'キー1' => '値1',
'キー2' => '値2',
'キー3' => '値3',
);
%hash = (
%hash,
'キー4' => '値4',
'キー5' => '値5',
);
のようにするのが普通だと思いますがリストのpushみたいに追加する
方法はないのでしょうか。
No.1ベストアンサー
- 回答日時:
例えば
push @a, (1, 2, 3);
のように、1度に複数のキーと値の組を追加したいでしょうか?
ハッシュのスライスを使えば以下のように出来ます。
my %hash = (
a => 1,
b => 2,
z => 26,
);
printf "%s %s\n", '-' x 7, 'before';
printf "%s => %s\n", $_, $hash{$_} for sort keys %hash;
@hash{"c", "d", "e"} = (3, 4, 5);# ハッシュのスライス
printf "%s %s\n", '-' x 7, 'after';
printf "%s => %s\n", $_, $hash{$_} for sort keys %hash;
頭に % ではなく @ が付く事に注意してください。
@hash{"c", "d", "e"}
は
($hash{"c"}, $hash{"d"}, $hash{"e"})
とほぼ同じ意味です。
あ~、なるほど。
そういえば、以前にこのようなことをしているスクリプトを見たことが
あるような気がします。
これってスライスっていう機能でこういう事ができるんですね。
Perlってまだまだ知らないことが多くて面白いです。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- オープンソース stable diffusionのインストールがうまくいきません。 1 2023/06/20 13:09
- Java JavaのSingletonパターンのprivateの持つ意味が分かりません。 5 2022/06/12 10:38
- デスクトップパソコン Windows11でスクショする方法がわかりません。 調べましたが、どうもWindowsキーがあるキ 8 2022/06/05 05:37
- Gmail GmailではメールをDelキーで削除可能でしょうか? 1 2022/08/17 10:43
- Wi-Fi・無線LAN ルーターの暗号化キーはなぜ初期値から変更するの? 2 2022/08/11 16:28
- カラオケ 原曲キー設定で歌った事を原曲キーと言ってはいけないんでしょうかね? 5 2023/06/01 23:00
- カラオケ 原曲キー設定で歌った事を原曲キーと言ってはいけないんでしょうかね? 5 2023/05/01 20:00
- Visual Basic(VBA) 別のファイルへ条件を指定してセルの値を転記したい 4 2022/04/04 15:38
- Excel(エクセル) MacのExcelでoptionキーを押したまま図形や画像を移動させると、複製されてしまう 2 2022/06/14 16:19
- その他(IT・Webサービス) Google日本語入力の操作方法 一度確定した後の訂正方法 1 2023/06/17 16:03
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
列挙型と連想配列の違いを教え...
-
perl ハッシュ エラー
-
チェックデジットについて
-
ハッシュの考え方、使用例を分...
-
Excel VBAで、アクティブシート...
-
データベースから取得したデー...
-
Perlで参照のクリアの方法
-
レインボー色ってどうやって表...
-
VBAでln関数の計算
-
再帰関数のインライン展開
-
UWSCの終了の仕方
-
ダイアログのテキストにマウス...
-
サンプルの意味
-
ループ7回目の悪役令嬢は、元敵...
-
Perlで早いプログラムを作りたい
-
ファイルから複数行のトークン...
-
最大値選択法
-
変数、ポインタ
-
JAVA:シューティングゲームの...
-
Do While Loop中の数式でRange関数
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
perl 文字列検索後に指定フィー...
-
文字列を変数名として扱う方法
-
ハッシュ検索はなぜ速い
-
チェックデジットについて
-
まったく同じファイルのハッシ...
-
英語でのシャープとコメの呼び...
-
列挙型と連想配列の違いを教え...
-
重複ファイルを削除したいので...
-
短いハッシュの作り方
-
ハッシュリストって単にハッシ...
-
ハッシュ値によるファイルの同...
-
文字列をハッシュにしなければ...
-
ハッシュマーク以降のアドレス取得
-
perlで配列名を動的に作り出したい
-
ハッシュ値が一致したデータは...
-
*(アスタリスク)の意味
-
JSを使ったタブの別ページから...
-
動的なハッシュの配列を作成したい
-
mapのポインタ
-
Perlは戻り値で、ハッシュや配...
おすすめ情報