06. Print関数

PythonにおけるPrint、Formatの使い方

更新日:

printは、文字列を画面に出力する関数で、非常に便利でpythonのプログラミングに欠かせない関数になります。

printは、様々な場面で利用され、画面にメッセージを表示するだけでなく、記述したプログラムが正常に動作するか確認する際に、printで変数などに格納された値を画面に出力し、正しく想定された値が格納されているかを確認するのにも利用します。

このページでは、printが実際にどのように使われるか、具体的な例も交えながら見ていきましょう。

 

PythonにおけるPrint関数の使い方

printは、文字列を画面に出力する関数で、以下のように記述します。

print("出力対象の文字列")

printでは、直接出力したい文字列を渡してその内容を表示するだけでなく、変数に格納した文字列や数値を出力することもできます。

In [1]: string = "Hello"
...:number = 123
...:print(string)
...:print(number)
Out[1]: Hello
            123

 

Jupyter Notebookではセルに変数を入力することで、変数に格納した値を確認することができますが、1つのセルに複数の変数を入力しても、最後の変数の値しか表示されません。そのような場合にprintを利用すると、全ての変数の値を確認することができます。

 

また+(プラス演算子)を利用して、複数の文字列を合わせて出力することもできます。

In [2]: string1 = "Hello"
...:string2 = "Good Bye"
...:print(string1 + ',' + string2)
Out[2]: Hello,Good Bye

 

数値と文字列を合わせて表示したい場合は、数値を文字列に変換する必要があります。ここではstrで数値を文字列に変換しています。

In [3]: product_name = "electric oven"
...:price = 21000
...:print(product_name + ': ' + str(price))
Out[3]: electric oven: 21000

 

Pythonでの変換指定文字(%記法)

またprintは、「%d」や「%s」などの変換指定文字を利用して、任意の文字列と、変数に格納された数値や文字列を合わせて表示することができます。

変換指定文字の種類はいくつかあり、その中でも特に良く使うのが、変数が文字列の時に使う「%s」、整数値の時に使う「%d」になります。

 

%記法の書式は以下の通りです。

print("文字列… %s 文字列…") % 変数 #変数が文字列の場合
print("文字列… %d文字列…") % 変数 #変数が整数の場合

printで出力する任意の文字列の中で、変数の値を表示したい箇所に%sや%dを挿入します。そしてprintの後に、%と挿入する変数を記載します。

 

変数が整数値の時に使う「%d」の使用例は次のようになります。

In [1]: product_name = "electric oven"
...: sales_amount = 21000
...: print(product_name + ': %d' % sales_amount)
Out[1]: electric oven: 21000

 

また%記法で複数の変数を出力したい場合は、タプル型を利用します。

タプル型については後の章で詳しく説明しますが、( ) 括弧に要素を記述した配列のようなものと思って下さい。各要素間はカンマで区切られています。

ここでは文字列型の変数product_nameと整数型の変数sales_amountをタプルに格納して、それぞれ「%s」、「%d」で表示しています。

In [2]: product_name = "electric oven"
...: sales_amount = 21000
...: print('%sの売上: %d' % (product_name, sales_amount))
Out[2]: electric ovenの売上: 21000

 

PythonにおけるFormatの使い方

formatを使って変数を出力する方法も紹介します。

formatの書式は以下の通りです。

print("文字列…{0}文字列…".format(変数))

formatを使う時は、任意の文字列を入力し、変数を代入したい場所に{0}を入力します。すると、{0}の位置にformatの引数になっている変数の値が表示されます。

 

In [1]: sales_amount = 21000
...: print("electric ovenの売上: {0}".format(sales_amount))
Out[1]: electric ovenの売上: 21000

 

表示する変数が複数ある場合は、{0}, {1}, {2}….と{}を増やしていきます。そして、formatの引数にformat(変数1, 変数2, 変数3…..)と変数を追加します。

変数1の値が{0}に、変数2の値が{1}に、というように順に代入されます。

以下が複数の変数をformatで表示する例です。

In [2]: product_name1 = "electric oven"
...: product_name2 = "TV"
...: sales_amount1 = 21000
...: sales_amount2 = 48000
...: print("{0}の売上:{1}, {2}の売上:{3}".
...:         format(product_name1, sales_amount1,
...:                    product_name2, sales_amount2))
Out[2]: electric ovenの売上:21000, TVの売上:48000

 
 
著書の紹介です。


 

-06. Print関数

Copyright© AI-interのPython3入門 , 2019 All Rights Reserved.