お薦め ページ


メニュー

ハワイ島 遊覧飛行ツアー

ハワイ島 B&B・ホテル

ハワイ島 不動産情報

ハワイ島 情報・観光ガイド

ブログ(Blog)

その他

関連サイト

: 個別エントリー・アーカイブ :

2006年11月17日

Rubyの「p」

Rubyのサンプル・ソースコード を読んでいたりすると 途中に「{|v| p v}」 のような表現があったりする。 この表現の全体の意味については、今日は触れないが、 通常、プログラム中に「p」という 一文字の表記があると、 名前が一文字の変数かな、と思ってしまうのではないかな。 しかしRubyの場合、これが組み込み関数(メソッド)だったりする。

Ruby リファレンスマニュアル「p」 によると、このメッソド「p」の定義は、 p の引数として オブジェクトをいくつか与えると、 与えられたオブジェクトを人間に読みやすい形で出力する、 というもの。 ということで、前述の「{|v| p v}」のうち、 「p v」というところは、「v」という名前の変数の内容を 「p」メッソドを使って表示させる、ということ。

ちなみに、「p」というのは埋め込みメッソドの名称ではあるが、 別にRubyの「予約語」になっているわけではないので、 「p」という名前の変数を作成することができてしまったりもする。 その辺も踏まえて、簡単な例題プログラムを書いてみる。
p="Hello World!"
p p

p = ["abc", 456, 789]
p p
p p[1]

p = {'water' => 'wet', 'fire' => 'hot'}
p p
p p['water']
これを走らせてみた結果は、
"Hello World!"
["abc", 456, 789]
456
{"water"=>"wet", "fire"=>"hot"}
"wet"
となる。

このように、Rubyでは メッソドの「p」と 変数名の「p」とをちゃんと識別できるわけだが、 「p」という名前の変数を作ってしまうと、 人間の方が混乱してしまうので、やめておいた方がよさそうだ。

【参考リンク】

カテゴリー: Ruby     2006年11月17日 22:45

トラックバック

このエントリーのトラックバックURL:
http://www.skymerica.com/blog/yotsumoto/mt/mt-tb.cgi/621


コメント

コメントしてください




保存しますか?


 
ハワイ島での遊覧飛行ツアーとB&Bのスペシャリスト、スカイメリカ
Copyright © 2003,2009 Skymerica Corp. All rights reserved.