nDiki : 2013年08月21日

2013年8月21日 (水)

Perl でスカラーコンテキストでリストを評価すると。

周りで以外に知られていなかったので、次に別の人に聞かれた時用に書いとく。

知っている人は知っている、リストと配列では、スカラーコンテキストで評価した時の結果が違うという話。

 $ perl -e "print scalar ('a', 'b', 'c');"
 c

 $ perl -e "print scalar @{['a', 'b', 'c']};"
 3

とか。 サブルーチンの return のところにリストを書いている時など注意。

 #!/usr/bin/perl

 use warnings;
 use strict;
 use 5.10.0;

 sub primes_5_array {
   my @primes = (2, 3, 5, 7, 11);
   return @primes;
 }

 sub primes_5_list {
   return (2, 3, 5, 7, 11);
 }


 $, = ', ';

 say primes_5_array(10);
 say scalar primes_5_array(10);

 say primes_5_list(10);
 say scalar primes_5_list(10);

参考:

  • perldoc perldata の List value constructors
  • perldoc -f scalar
スポンサード リンク

今日のさえずり: この家、いつ変形して出撃するか楽しみにしている

rimage:/nDiki/Flickr/9559839028.jpg

2013年08月21日

[ 8月21日全て ]

About Me

Naney Naney

Naney (なにい)です。株式会社ミクシィで SNS 事業の部長をしています。

About nDiki

nDiki1999年1月に始めたコンピュータ日誌を前身とする NaneyWeb 日記(兼パーソナルナレッジベース)です。

#nNote タグがついている記事は他の記事に比べて、より断片的・未整理・不完全なちょっとしたノートです。まだ結論に至っていない考えなども含まれます。頻繁/大幅に更新したり削除したりすることがあります。

※本サイトの内容は個人的見解であり所属組織とは関係ありません。

Other Notes

ナレッジベースアプリケーション Obsidian で書いているノートの一部を notes.naney.org で 公開しています。

最近検索されている記事

月別インデックス
Process Time: 0.043484s / load averages: 0.78, 0.62, 0.54
nDiki by WATANABE Yoshimasa (Naney)
Powered by DiKicker