p array要求した出力が得られます。
[[6,6,3]、[7,4,7]、[4,7,4]]
各行を別々の行に表示したいですか? 次に使用します。
array.each {|e| p e}
取得するため:
[6,6,3]
[7,4,7]
[4,7,4]
Array クラスにメソッドを追加できます。
class Array
def ppa # 'pretty-print array'
self.each {|e| p e} # or just 'each {|e| p e}'
end
end
それはあなたが書くことを可能にするでしょう
array.ppa
同じ 3 行の出力が得られます。( putsandinspectの代わりに使用できますp。) これを頻繁に使用すると思いますか? 次に、このコードを「array_print.rb」という名前のファイルに入れ、'require array_print'「.rb」コード ファイルの先頭に追加します。プログラムを実行するたびに、 のステートメントarray_print.rbが実行され、Arrayメソッドpprが使用できるようになります。
それだけではありません!3 次元配列、ハッシュ、配列のハッシュなどについても適切にフォーマットされた出力が必要であるとします。上記で説明したアプローチについて詳しく説明することはできますが、なぜ車輪を再発明するのでしょうか? これらすべてを処理してくれる優れた Ruby gem がいくつかあります。人気の1つが「awesome print」。この gem をインストールrequire 'awesome_print'したら、コード ファイルに追加するだけです。その後、そのapメソッドを使用して出力をフォーマットできます。( gem のインストール方法については、RubyGemsを参照してください。簡単です)。
awesome print が何をするかを知るために、上記の配列の代わりに次のハッシュを表示したいとします。
hash = {"cat"=>["mice", "birds"], "dog"=>["master",["kids", "moms"]]}
を実行するap hashと、次のようになります。
{
"cat" => [
[0] "mice",
[1] "birds"
],
"dog" => [
[0] "master",
[1] [
[0] "kids",
[1] "moms"
]
]
}