リストのリテラル
投稿:2018-04-10
興味深いツイートを見かけたので。
ご覧ください。
#!/usr/bin/env perl -w use utf8; use warnings; use strict; use Encode::Locale; use open IO => ":utf8"; binmode STDOUT, ":encoding(console_out)"; binmode STDERR, ":encoding(console_out)"; $| = 1; print "配列にリストを代入\n"; my @a; @a = ("a", 1); for (@a) { print "$_\n"; } print "ハッシュにリスト(キーと値の1組)を代入\n"; my %a; %a = ("a", 1); print "キー「a」の値を表示\n"; print $a{"a"} . "\n"; print "ハッシュにリスト(キーと値の2組)を代入\n"; %a = ("a", 1, "b", 2); print "キー「a」の値を表示\n"; print $a{"a"} . "\n"; print "キー「b」の値を表示\n"; print $a{"b"} . "\n"; print "リストの書き方を「キー => 値」にする\n"; %a = ("a" => 1, "b" => 2); for (sort keys %a) { print "キー「$_」の値は「$a{$_}」\n"; } print "矢印「=>」を使っていてもリストだから配列に代入できる\n"; @a = ("a" => 1, "b" => 2); for (@a) { print "$_\n"; } print "リストだからforのカッコに書ける\n"; for ("a" => 1, "b" => 2) { print "$_\n"; } exit;
例によってWindowsとLinuxで確認済みです。
配列にリストを代入 a 1 ハッシュにリスト(キーと値の1組)を代入 キー「a」の値を表示 1 ハッシュにリスト(キーと値の2組)を代入 キー「a」の値を表示 1 キー「b」の値を表示 2 リストの書き方を「キー => 値」にする キー「a」の値は「1」 キー「b」の値は「2」 矢印「=>」を使っていてもリストだから配列に代入できる a 1 b 2 リストだからforのカッコに書ける a 1 b 2
「コンマ演算子」
「=> 演算子(時々『ファットコンマ』と発音されます)はコンマ演算子の 同義語です」
perlop - Perl の演算子と優先順位 - perldoc.jp
「リスト値のコンストラクター」
「リスト値は、個々の値をコンマで区切って (必要に応じて括弧で括って) 示されます」
perldata - Perl のデータ型 - perldoc.jp
「ハッシュはキーと値と解釈される値のペアとなるリストリテラルを使って 初期化されます」
perldata - Perl のデータ型 - perldoc.jp
「=> 演算子(時々『ファットコンマ』と発音されます)はコンマ演算子の 同義語です」
perlop - Perl の演算子と優先順位 - perldoc.jp
「リスト値のコンストラクター」
「リスト値は、個々の値をコンマで区切って (必要に応じて括弧で括って) 示されます」
perldata - Perl のデータ型 - perldoc.jp
「ハッシュはキーと値と解釈される値のペアとなるリストリテラルを使って 初期化されます」
perldata - Perl のデータ型 - perldoc.jp