Rubyでprintメソッドを使い、引数を文字列に変換して標準出力する方法を現役エンジニアが解説【初心者向け】
初心者向けにRubyでprintメソッドを使う方法について現役エンジニアが解説しています。printメソッドとは引数を文字列に変換して標準出力に出力(表示)するメソッドです。putsメソッドとの違いは、自動では改行コードを付与してくれないところです。
テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日 調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名 調査手法:インターネット調査
Rubyでprintメソッドを使う方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。
Rubyについてそもそもよく分からないという方は、Rubyとは何なのか解説した記事を読むとさらに理解が深まります。
なお本記事は、TechAcademyのオンラインブートキャンプ、Ruby講座の内容をもとに紹介しています。
今回は、Rubyに関する内容だね!
どういう内容でしょうか?
Rubyでprintメソッドを使う方法について詳しく説明していくね!
お願いします!
printメソッドとは
引数を文字列に変換して標準出力に出力(表示)するメソッドです。引数がない場合は、標準入力で得られた値( $_ )を出力します。改行コードは含まれないので、文字列を改行させたい場合は意図して改行コードを引数に渡す必要があります。
出力メソッドにputsメソッドがありますが、こちらは改行コードを自動で付け加えてくれます。
printメソッドを使うメリット
あえて改行させずになにかを表示したいときに便利です。putsメソッドは自動で(強制的に)改行してしまいますが、 printメソッドは自動では改行しません。また、複数の変数を連結して表示させたいときに便利です。
putsメソッドに複数の引数を与えた場合はそれぞれの引数を改行して出力しますが、printメソッドに複数の引数を与えた場合はそれぞれの引数を連結して出力します。
printメソッドを使う方法
以下の形式で使用します。
print 引数
引数は複数も可能です。その場合は連結した文字列を出力します。
print 引数, 引数, 引数
実際に書いてみよう
# 引数を連結して出力します。 # 改行しないため、改行させる場合は改行コードを意図して含める必要があります。 print "a", "b" ,"rn" #=> "ab" # 出力フィールドセパレータである「$,」に nil 以外の値をセットすると、その文字列を使って引数を連結します。 $, = "@@@" print "a", "b" ,"rn" #=> "a@@@b@@@" $, = nil # 出力レコードセパレータである「$」に nil 以外の値をセットすると、出力した文字列の最後にその値を出力します。 $ = "rn" print "a", "b" # => "ab" $ = nil # 出力フィールドセパレータと出力レコードセパレータの両方を改行コードにすると、puts メソッドと同じ結果が得られます。 $, = "rn" $ = "rn" print "print =>", "aaa", "bbb" puts "puts =>", "aaa", "bbb" __END__
実行結果
#=> ab a@@@b@@@ ab print => aaa bbb puts => aaa bbb
まとめ
まとめてみしょう。
- print メソッドは引数を文字列に変換して標準出力に出力するメソッド
- 複数の引数を連結して表示する
- 出力の際に改行コードは付加されない
- 改行させたい場合は意図的に改行コードを明記する必要がある
print メソッドを使うことで簡単に標準出力に表示させることができましたね。
どんどん活用していきましょう。
筆者プロフィール
メンター古川さん
Rubyが得意で、Webエンジニアとして最上流から最下流までセルフスターターとして活躍してきました。 近年セミリタイアし、フリーランスとして適度に働きながら穏やかな生活を楽しでいます。 |
内容分かりやすくて良かったです!
ゆかりちゃんも分からないことがあったら質問してね!
分かりました。ありがとうございます!
TechAcademyでは、初心者でも、Ruby on Railsを使ったプログラミングを習得できる、オンラインブートキャンプを開催しています。
また、現役エンジニアから学べる無料体験も実施しているので、ぜひ参加してみてください。