icon
icon

Pythonにおける%dを用いたprint関数の利用方法について現役エンジニアが解説【初心者向け】

テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日  調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名  調査手法:インターネット調査

Pythonにおける%dを用いたprint関数の利用方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

そもそもPythonについてよく分からないという方は、Pythonとは何なのか解説した記事を読むとさらに理解が深まります。

 

なお本記事は、TechAcademyのオンラインブートキャンプPython講座の内容をもとに紹介しています。

 

田島悠介

今回は、Pythonに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

Pythonにおける%dを用いたprint関数の利用方法について詳しく説明していくね!

大石ゆかり

お願いします!

 
この記事では、Pythonにおける標準出力に文字列を表示するためのprintで書式を指定する%dの使い方について解説します。

 

print()とは

まずは、print関数について復習します。

print関数は引数で受け取った文字列を「標準出力」と呼ばれる場所に表示するための関数です。「標準出力」というのはかんたんに言うと、「何も指定していない場合に表示される画面」のことです。

print('文字列')

とすることで文字列を表示することができます。

 

%を用いたprint方式とは

print関数は%を用いることで書式を設定することもできます。

例えば、文字列を数値を一緒に表示したい場合は、

print('文字列' + str(数値))

などのようにして、数値を文字列に変換して+演算子で結合させてから表示できます。しかし、これだと都度演算子を使う必要があったりして記述するのが少し面倒になってしまいます。

しかし、%を用いるとより簡単に記述できます。

具体的には、文字列の中の数値を入れたい部分に%dを使い、

print('適当な文字列に%dを入れたもの' % %dの部分に代入したい数値)

というようにするだけ良いです。

例えば、

print("私は%d歳です" % 25)

のようにすると、

私は25歳です。

と出力されます。

複数の数値を用いる場合も

print("私の誕生日は%d月%d日です。" %(8, 25))

のようにし%dを複数用いて、代入したい数値をカンマで区切って括弧でくくって指定することで、

私の誕生日は8月25日です。

のように複数の数値を出力できます。

%dを用いずに同じ処理を行おうとすると、

print("私の誕生日は" + str(8) + "月" + str(25) + "日です。")

のようにいちいち文字列を分割し、数値を文字列に変換し、それらを+演算子で結合しなければなりません。

それに対して%dを使うとかんたんに複数の数値を出力できるのでこちらを使うことをオススメします。

 

[PR] プログラミングで挫折しない学習方法を動画で公開中

print()の%dを用いて数値を出力してみよう

それでは、実際にprint関数と%dを用いて文字列と数値を出力してみましょう。

# %dを用いた方法
>>> print("現在は%d年%d月%d日です。" % (2020, 8, 7))
現在は2020年8月7日です。

# +演算子を用いた方法
>>> print("現在は" + str(2020) + "年" + str(8) + "月" + str(7) + "日です。")
現在は2020年8月7日です。

+演算子を使うよりも%dを用いた方法の方コードが短くなっているのがわかります。

 

まとめ

この記事ではprint関数において%dを用いることで数値を文字列中に代入して出力する方法について解説しました。

コードがシンプルになって、コードの修正や変更も用意になるので積極に敵に使っていってください。

コラム

実は私も!?独学で損する人の特徴

「スクールは高いから独学で成功する」という気持ちの方は多いと思います。
もちろんその方が金額は低く抑えられるでしょう。
ただ 独学には向き不向きがあり、実はスクールが向いている人も大勢います。

そんな方のために参考として、 テックアカデミー卒業生がスクールを選んだ理由 をご紹介します。

  • ・困って挫折しそうなときに、質問や相談できる相手がいる環境で学んでいきたいなと思った
  • ・わかった気になっているだけだったので、自分を追い込む環境に置いた方がいいと感じた
  • ・スクールのカリキュラムで市場に求められるスキルを学ぶべきと思った

少しでも当てはまる部分があれば、 スクールが向いているかもしれません。
お試しのつもりで、まずは一度 無料相談 に参加してみませんか?

現役エンジニア・デザイナーに何でも気軽に相談できる30分すべて無料で できます。
無理な勧誘は一切ない ので、お気軽にご参加ください。

今なら相談した方限定の割引・参加特典付き! 無料相談はこちら

監修してくれたメンター

メンターSさん

システムエンジニアとしてこれまで行政システムや医療用システムの保守、開発に携わりました。

JavaやPython、PHP、Kotlinなど様々な言語での開発経験があります。
TechAcademyではJavaコース、Pythonコース、AIコースなど7コースを担当しています。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でも最短4週間でPythonを使った人工知能(AI)や機械学習の基礎を習得できるオンラインブートキャンプPython講座を開催しています。

挫折しない学習方法を知れる説明動画や、現役エンジニアとのビデオ通話とチャットサポート、学習用カリキュラムを体験できる無料体験も実施しているので、ぜひ参加してみてください。

初心者・未経験でもできる。まずはテックアカデミーに相談しよう

プログラミングを独学していて、このように感じた経験はないでしょうか?

  • ・調べてもほしい情報が見つからない
  • ・独学のスキルが実際の業務で通用するのか不安
  • ・目標への学習プランがわからず、迷子になりそう

テックアカデミーでは、このような 学習に不安を抱えている方へ、現役エンジニア講師とマンツーマンで相談できる機会を無料で提供 しています。
30分間、オンラインでどんなことでも質問し放題です。

「受けてよかった」と感じていただけるよう 厳しい試験を通過した講師 があなたの相談に真摯に向き合います。

「ただ気になることを相談したい」
「漠然としているがプロの話を聞いてみたい」

こんな気持ちでも大丈夫です。

無理な勧誘は一切ありません ので、まずはお気軽にご参加ください。
※体験用のカリキュラムも無料で配布いたします。(1週間限定)

今なら参加者限定の割引特典付き! 無料相談を予約する