【保存版】Pythonのprint関数を基本から応用まで徹底解説

※本サイトにはプロモーション・広告が含まれています。

(最終更新月:2023年5月)

✔このような方へ向けて書かれた記事となります

「Pythonのprint関数とは何で、どのように使用するのだろうか?」

「Pythonのprint関数の使い方を学びたい」

「Pythonのprint関数の具体的な使用例を見て理解したい」

✔当記事を通じてお伝えすること

  • Pythonのprint関数の基本的な使い方
  • print関数の応用法
  • Pythonのprint関数を用いた具体的な使用例

当記事では、Pythonのprint関数の基本的な使い方から、さまざまな応用した使い方の説明まで、具体的な例を交えてご紹介します。

ぜひ最後までお読みください。

筆者プロフィール

筆者プロフィールアイコン

【現職】プロダクトマネージャー

【副業】ブログ(月間20万PV)/YouTube/Web・アプリ制作

「プログラミング × ライティング × 営業」の経験を活かし、30後半からのIT系職へシフト。現在はプロダクトマネージャーとして、さまざまな関係者の間に入り奮闘してます。当サイトでは、実際に手を動かせるWebアプリの開発を通じて、プログラミングはもちろん、IT職に必要な情報を提供していきます。

【当ブログで紹介しているサイト】

当サイトチュートリアルで作成したデモ版日報アプリ

Django × Reactで開発したツール系Webアプリ

✔人に見せても恥ずかしくないコードを書こう

「リーダブルコード」は、わかりやすく良いコードの定義を教えてくれる本です。

  • 見るからにきれいなコードの書き方
  • コードの分割方法
  • 変数や関数の命名規則

エンジニアのスタンダートとすべき基準を一から解説しています。

何回も読むのに値する本なので、ぜひ手にとって読んでみてください。

Pythonのprintについての基礎知識

printはPythonのメソッドでも、使う頻度の高いもの。

まずは基礎から頭に入れ、応用した使い方まで一気に覚えましょう。

  • Pythonのprintの基本的な使い方・構文
  • Python2とPython3のprintの違い

Pythonのprintの基本的な使い方・構文

Pythonのprint関数は、基本的には以下のように使用します。

print("Hello,World!")

これを実行すると、Pythonは”Hello,World!”という文字列を出力します。

このように、print関数は引数として与えられた情報をコンソール上に表示するものです。

Python2とPython3のprintの違い

Python2とPython3では、print関数の使い方が少し違います。

Python2では、printは文(ステートメント)として扱われ、括弧なしで使われることがよくありました。

print"Hello,World!"

しかしPython3では、printは関数として扱われ、括弧が必須となりました。

print("Hello,World!")

これ以降の記事では、Python3の構文を使用します。

print関数でデータを出力してみよう

print関数はさまざまななデータ型の出力に対応しています。

ここでは、それらの基本的な使い方を見ていきましょう。

  • 文字列の出力
  • 数値の出力
  • リストの出力
  • 辞書の出力
  • 変数の出力

文字列の出力

文字列はダブルクォーテーション(“”)またはシングルクォーテーション(”)で囲みます。

これをprint関数に渡すと、その文字列が出力されます。

print("Hello,Python!")

数値の出力

数値もまた直接出力することができます。

整数、浮動小数点のどちらも対応しています。

print(123)
print(98.6)

リストの出力

リストもそのまま出力することができます。

リストの各要素はカンマで区切られ、全体はブラケット([])で囲まれます。

print([1,2,3,4,5])

辞書の出力

辞書型のデータも出力可能です。

辞書はキーと値のペアを保持し、全体は波括弧({})で囲まれます。

print({"apple":1,"banana":2})

変数の出力

変数に格納された値も出力できます。

変数名をprint関数に渡すだけで、その値を表示できます。

x="Hello,variable!"
print(x)

.print関数でのデータ整形

print関数では、出力するデータの整形も可能です。

  • 整形(折り返し・省略など)して出力
  • データ型による整形の違い

整形(折り返し・省略など)して出力

生計が使える場面はこちら。

  • 長い文字列を一定の幅で折り返して出力したい
  • 特定の長さ以上の文字列を省略して出力したい

このようなときは、準ライブラリの`textwrap`を使用できます。

>>> import textwrap
>>> s="Thisisareallyreallylongstring."
>>> print(textwrap.fill(s,20))
Thisisareallyreallyl
ongstring.

データ型による整形の違い

データ型(数値や文字列など)によっては、特定の形式で出力するための方法が存在します。

例えば、浮動小数点数は小数点以下の桁数を指定して出力できます。

x=3.14159
print("%.2f"%x)
>>> x=3.14159
>>> print("%.2f"%x)
3.14

このほかにも、リストの要素を特定の文字列で連結した形で出力できます。

list=["apple","banana","cherry"]
print(",".join(list))
>>> list=["apple","banana","cherry"]
>>> print(",".join(list))
apple,banana,cherry

このように、joinメソッドを使用することでリストの各要素を指定した文字列で連結して出力することができます。

print関数での文字列フォーマット

Pythonのprint関数では、文字列内に変数の値を埋め込んで出力できます。

これは、文字列のフォーマットと呼ばれ、さまざまな方法があります。

  • パーセント%を使うprintf形式
  • 文字列メソッドformat()
  • f文字列(フォーマット文字列)

パーセント%を使うprintf形式

C言語のprintf形式を模した方法です。文字列内に%記号を使って変数を埋め込みます。

>>> name="Alice"
>>> print("Hello,%s!"%name)
Hello,Alice!

文字列メソッドformat()

Python2.6以降では、formatメソッドを使用したフォーマットが推奨されています。

  • formatメソッドとは
  • formatメソッドとprintの合わせ技

formatメソッドとは

formatメソッドは、文字列内の{}(中括弧)に変数の値を埋め込む機能を持っています。

formatメソッドとprintの合わせ技

formatメソッドをprint関数と組み合わせると、以下のように使えます。

>>> name="Alice"
>>> print("Hello,{}!".format(name))
Hello,Alice!

f文字列(フォーマット文字列)

Python3.6からは、f文字列(またはf-string)と呼ばれる新しいフォーマット方法が導入されました。

  • f文字列とは
  • f文字列とprintの合わせ技

f文字列とは

f文字列は、文字列の先頭にfまたはFをつけ、文字列内の{}に変数名を直接書くことで変数の値を埋め込むことができます。

f文字列とprintの合わせ技

f文字列をprint関数と組み合わせると、以下のように使えます。

>>> name="Alice"
>>> print(f"Hello,{name}!")
Hello,Alice!

この方法は、読みやすさと実行速度の点で優れています。

print関数の高度な使い方

print関数には、より高度な出力制御のための機能もいくつか存在します。

  • 末尾の改行なしで出力(引数end)
  • 複数の変数を出力(引数sepで区切り文字を指定)
  • リストの要素を任意の文字で区切って出力

末尾の改行なしで出力(引数end)

print関数はデフォルトで末尾に改行文字が入っています。

ただし以下のように「end」引数で””を指定すると、改行されません

>>> print("Hello,Python!",end="")
Hello,Python!>>> 

Hello, Pythonの後は改行されません。

複数の変数を出力(引数sepで区切り文字を指定)

複数の値を出力したい場合、print関数にそのまま複数の引数を渡せます。

このとき、引数sepを用いて出力される値の間の区切り文字を指定することができます。

>>> print("Hello","Python",sep="|")
Hello|Python

sepで指定した「|」が、引数の区切りで使われているのです。

リストの要素を任意の文字で区切って出力

joinメソッドとprint関数を組み合わせると、リストの要素を任意の文字で区切って出力することが可能です。

>>> fruits=["apple","banana","cherry"]
>>> print("/".join(fruits))
print("/".join(fruits))

数値の書式を指定して出力

Pythonでは、数値の書式を指定して出力できます。

  • 小数点以下の桁数の指定方法
  • 数値を指数表記で出力する方法
  • 整数を特定の桁数で出力する方法

小数点以下の桁数の指定方法

小数点以下の桁数を指定して浮動小数点数を出力する例を見てみましょう。

これは%.nfという形式で指定します。nは小数点以下の桁数を表します

x=3.141592
print("%.2f"%x)

数値を指数表記で出力する方法

小数を指数表記で出力するには、”%e”を使用します。

>>> x = 1234567890.1234567890
>>> print("%.2e" % x)  
1.23e+09

この例では、xの値を小数第二位までの指数表記で出力しています。

整数を特定の桁数で出力する方法

整数を特定の桁数で出力するには、”%0nd”を使用します。

ここでnは出力する桁数を表します。

>>> x = 123
>>> print("%05d" % x) 
00123

この例では、xの値を5桁の整数として出力。

xの値が5桁未満の場合、先頭は0で埋められます。

Pythonでprintを使う際の注意点とコツ

Pythonのprint関数は非常に便利ですが、使い方を間違えると予期せぬ結果を引き起こすことがあります

  • よくある間違いとその対処法
  • ヒントとトリック

よくある間違いとその対処法

例えば、print関数を用いて複数の値を出力したい場合、引数をカンマで区切って渡すのが一般的です。

しかし、間違えてプラス記号を使ってしまうと、エラーが発生する可能性があります。

>>> print("Theansweris"+42)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: can only concatenate str (not "int") to str

この問題を解決するためには、異なる型の値を結合する前に同じ型に揃えるか、カンマを使用して値を区切る必要があります

print("Theansweris"+str(42))
print("Theansweris",42)

ヒントとトリック

一方、print関数を使う上で便利なテクニックもいくつかあります。

ヒントとトリック説明
データ型の自動変換print関数は異なるデータ型の値を自動的に文字列に変換して出力します。print("The answer is", 42)
sepパラメータ複数の値を出力する際、sepパラメータを使用すると出力される値の間の区切り文字を指定します。print("Hello", "Python", sep=", ")
endパラメータendパラメータを使用すると、出力の末尾に追加する文字を指定できます。デフォルトは改行(\n)ですが、これを変更することができます。print("Hello, Python!", end="!!")
formatメソッドformatメソッドを使用すると、値を文字列に埋め込んで出力することができます。print("The answer is {}".format(42))
f-string(フォーマット文字列)f-stringを使用すると、より簡潔に文字列に値を埋め込むことができます。print(f"The answer is {42}")
joinメソッドjoinメソッドを使用すると、リストの要素を任意の文字で連結して出力することができます。print(", ".join(["apple", "banana", "cherry"]))

まとめ

この記事では、Pythonのprint関数の基本的な使い方から高度な使い方までを詳しく見てきました。

print関数は、コードの動作を確認したり、結果を表示したりするために非常に頻繁に使用されるものです。

そのため、print関数の機能を理解し、適切に使いこなすことは、Pythonプログラミングスキルを向上させる上で非常に重要です。

タイトルとURLをコピーしました