Pythonで文字列や数値を表示するためには、print()関数を使います。
Pythonでプログラムを書いた後、その処理の結果を出力する場面はたくさんあります。
本記事では、Pythonでのprint()関数を用いた文字列・数値の出力の仕方、print()関数の応用を解説します。
後半は初心者にとってはやや難しい内容になりますが、print()関数は様々な場面でよく使われるので、一つ一つ理解していきましょう!
AIやデータサイエンスを学びたくてPythonを学び始めたけど
「独学ではやっぱり限界がある」
と不安を感じた方にオススメしたいのが、Aidemy Premium Plan。
AIに関する幅広い種類の講座や徹底したコーチング指導が特徴です!
実務を見据えてPythonをがっつり学習していきたい方は、まずは無料の「オンライン相談」に参加してみてください。
また、Aidemy Premium Planのメリットやデメリットなどについては、以下の記事も参考にしてください。
Aidemy(アイデミー)の評判と口コミまとめ!受講したほうがいい理由を紹介
Pythonのprint()関数の基本的な使い方
文字列・数値をそのまま出力する方法は非常にシンプルです。
数値を出力する場合: print(数値)
文字列と数値の違いは、文字列は「’」で囲うが、数値では囲まないということです。
また、変数をあらかじめ定義していた場合は、その変数をprint()関数の()内に記述することで、使用できます。
[code language=”python”]
print(‘I have an apple’)
# I have an appleを出力
print(27)
# 27を出力
s = ‘I love you’ # 変数を定義
print(s)
# I love youを出力
[/code]
リストや辞書は、そのまま出力されます。
[code language=”python”]
print([166, 171, 176, 168, 172])
# [166, 171, 176, 168, 172]を出力
print({‘Iwai’: 1, ‘Komiya’: 2, ‘Yamasato’: 3})
# {‘Iwai’: 1, ‘Komiya’: 2, ‘Yamasato’: 3}を出力
[/code]
Pythonのprint()関数出力の改行を変更する(引数end)
さて、以下のようにprint()関数を記述すると、全て改行されて出力されます。
[code language=”python”]
print(‘I am Yuki.’)
print(‘I like anime.’)
print(‘I am good at drawing.’)
# I am Yuki.
# I like anime.
# I am good at drawing.
[/code]
print()の出力は、文末で改行するようデフォルトで設定されているためです。
文末の改行を別の文字に変更するには、endという引数を渡します。
実際に、改行でなく「|||」で次のprint()関数との区切りをしてみます。
[code language=”python”]
print(‘I am Yuki.’, end =’|||’)
print(‘I like anime.’, end =’|||’)
print(‘I am good at drawing.’)
# I am Yuki.|||I like anime.|||I am good at drawing.
[/code]
空白で区切りたいときは「end =’ ‘」を渡します。
[code language=”python”]print(‘I am Yuki.’, end =’ ‘)
print(‘I like anime.’, end =’ ‘)
print(‘I am good at drawing.’)
# I am Yuki. I like anime. I am good at drawing.[/code]
Pythonのprint()関数で複数の文字列・数値を出力する(引数sep)
print()関数で複数の文字列・数値を出力する場合は、()内を「,」で区切ります。
[code language=”python”]
print(‘Red’, ‘Green’, ‘Blue’)
# Red Green Blue
[/code]
区切り文字は、デフォルトでスペースとなっています。
この区切り文字を変えたい場合は、sepを引数として渡します。
ここでは、「, 」で区切りたいと思います。
[code language=”python”]
print(‘Red’, ‘Green’, ‘Blue’, sep = ‘, ‘)
# Red, Green, Blue
[/code]
また、改行したい場合は、改行コード「\n」を使用しましょう。
[code language=”python”]
print(‘Red’, ‘Green’, ‘Blue’, sep = ‘\n’)
# Red
# Green
# Blue
[/code]
また、リストの要素を出力する際には、リスト(またはその変数)の直前に「*」を付けます。
デフォルトでは、空白で区切られ、sepを引数として渡すこともできます。
[code language=”python”]
height = [166, 171, 176, 168, 172]
print(*height)
# 166 171 176 168 172
print(*height, sep = ‘, ‘)
# 166, 171, 176, 168, 172
[/code]
Pythonのprint()関数で、複数の文字列・数値を1つの文字列にする方法(「+」、「%」、formatメソッド)
ここでは、複数の文字列・数値を1つの文字列にする方法を「+」、「%」、formatメソッドに分けて紹介します。
「+」を用いた文字列の出力
「+」を用いることで、文字列と文字列を続けて表示することができます。
[code language=”python”]
sign = ‘さそり座’
print(‘私は’ + ‘sign’ + ‘です’)
# 私はさそり座です
[/code]
しかし、次のようなプログラムではエラーが起こってしまいます。
[code language=”python”]
month = 6
print(‘私は’ + month + ‘月生まれです’)
# エラー
[/code]
これは、文字列と数値という別の型を繋げようとしたためです。
解決するには、数値を文字列に変える必要があります。
数値を文字列に変えるためには、str()関数を使います。
[code language=”python”]
month = 6
print(‘私は’ + str(month) + ‘月生まれです’)
# 私は6月生まれです
[/code]
「%」を用いた文字列の出力(printf形式)
Pythonのprint()関数では、他のプログラミング言語の「%」を用いたprintfのような形式の出力もできます。
形は、
です。
変数が入る文字列には、埋め込みたい箇所に「%d」「%f」「%s」といった変換指定子を記述しておきます。
「%d」には整数が、「%f」には浮動小数点数が、「%s」には文字列が埋め込まれます。
[code language=”python”]
month = 6
print(‘私は%d月生まれです’ % month)
# 私は6月生まれです
name = ‘Taro’
year = 1930
print(‘%sは%d年生まれです’ % (name, year))
# Taroは1930年生まれです
[/code]
formatメソッドを用いた文字列の出力
formatメソッドを使うことで、より直感的に文字列に値の埋め込みができます。
変数が入る文字列には、{}を用いて埋め込みたい箇所を指定します。
[code language=”python”]
month = 6
print(‘私は{}月生まれです’.format(month))
# 私は6月生まれです
name = ‘Taro’
year = 1930
print(‘{}は{}年生まれです’.format(name, year))
# Taroは1930年生まれです
[/code]
インデックスを指定することで、同じ値を繰り返し使えます。
[code language=”python”][/code]
name = ‘Taro’
food = ‘りんご’
print(‘{0}は{0}が育てた{1}で作った、{1}のスイーツが大好きです’.format(name, food))
# TaroはTaroが育てたりんごで作った、りんごのスイーツが大好きです
最後に: print()関数の書き方は、シンプルなものから複雑なものまである
print()関数の様々な記述方法を紹介しました。
少し複雑なものもありましたが、Pythonプログラミングを続けていく上でどれも欠かせないものです。
一つ一つしっかりと定着させていきましょう!