※こちらの記事は、プロスタ編集部が現在大変人気の高いPythonの文法記事を公開することで、皆様の学習にお役に立ちたい意図で投稿しております。
参考サイト:【Python入門】Print文での文字列の出力の仕方
#【Python入門】Print文での文字列の出力の仕方
画面への文字列の出力はプログラムの基本中の基本です。Pythonにおける画面への出力には「print関数」を使います。Pythonを使う上で、print関数は欠かす事が出来ないものです。今回はprint関数の使い方について説明します。
目次
1 printとは
2 printで変数を出力する
2.1 printで変数だけを出力
2.2 format関数
2.3 %記法
2.4 文字列+変数
##printとは
print関数は、文字列を画面に出力する関数です。print関数の基本的な構文は以下のようになります。
Python
print('出力したい文字列')
printで文字を出力するには、printの引数部分に出力したい文字列を置きます。printでは文字の末尾に改行が追加されるので、出力した文字列が自動的に改行されます。改行をしたくない場合はendオプションを用いて末尾に何も付加しないようにします。
print('Hello', end='')
print('World')
HelloWorld
また、Python2の場合は文字列のあとに「,」を付けることで改行をなしにできます。
print('Hello' ,)
print('World')
HelloWorld
##printで変数を出力する
###printで変数だけを出力
Pythonでは変数に文字列や数字を格納することができます。printを使えば変数に格納した文字列や数字を出力することもできます。
strings = 'Hello, World!'
number = 100
print(strings)
print(number)
Hello, World!
100
これで、printを用いて変数を出力できるようになりました。しかし、printで変数を出力する時に、任意の文字列と一緒に表記したい時があると思います。例えば、ある計算結果が100になった際に、ただ「100」と表示するよりも「答え:100」といったように出力したほうがわかりやすいですね。
Pythonのprintには、文字列と変数を一緒に出力する方法がいくつかあります。
###format関数
Python2.6以上から使うことができる新しい方式が、format関数を使って文字列と変数を出力する方法です。format関数の書式は以下の通りです。
print('任意の文字列{0}任意の文字列'.format(変数)
format関数を使う時は、任意の文字列を入力し、変数を代入したい場所に{0}を入力します。すると、{0}の位置にformatの引数になっている変数の値が表示されます。
number = 100
print('答え:{0}'.format(number))
答え:100
表示したい変数が複数あるときは、{0}, {1}, {2}….と{}を増やしていき、format関数の中の引数にformat(変数1, 変数2, 変数3…..)というように追加していきます。
answer1 = 50
answer2 = 100
print('答え1:{0}, 答え2:{1}'.format(answer1, answer2))
答え1:50, 答え2:100
###%記法
%記法は%演算子を使って変数で置き換える方法です。 C言語などでおなじみの方法ですね。%dや%sなどの変換指定文字を利用して文字列と変数を出力します。%記法の書式は以下の通りです。
print('任意の文字列%s任意の文字列') % 変数 #変数の中身が文字列のとき
print('任意の文字列%d任意の文字列') % 変数 #変数の中身が整数のとき
変換指定文字はいくつか種類がありますが、変数の中身が文字列のときの「%s」、整数の数値のときの「%d」の2つがとくによく使われます
answer = 50
print('答え:%d' % answer)
答え:50
%記法で複数の変数を出力したい場合は、タプル型を利用します。
name = 'Tanaka'
point = 80
print('%sの得点:%d' % (name, point))
Tanakaの得点:80
###文字列+変数
3つ目の方法は、+演算子で文字列と変数を足し合わせて一つの文字列として出力することです。Pythonでは+演算子で文字列と文字列や文字列を格納した変数を足し合わせることができ、これを連結といいます。print関数の中で文字列を連結することで、一つの文字列にしてそのまま出力することができます。
a = 'hello'
b = 'world!'
print(a + ',' + b)
hello,world!
連結ができるのは文字列だけなので、数値などを出力するときは文字列に変換してから連結するようにしましょう。
name = 'Tanaka'
point = 80
print(name + 'の得点:' + str(point)) #pointをstr関数で文字列に変換
Tanakaの得点:80
・日本語の扱いについて
ここまでのサンプルでもお分かりかもしれませんが、Pythonのprintでは、当然日本語を出力することができます。しかし、何も考えずに日本語を出力しようとするとエラーになることがあります。