【Python初心者】print()関数で文字列・数値を出力する方法

Pythonで文字列や数値を表示するためには、print()関数を使います。

Pythonでプログラムを書いた後、その処理の結果を出力する場面はたくさんあります。

本記事では、Pythonでのprint()関数を用いた文字列・数値の出力の仕方、print()関数の応用を解説します。

後半は初心者にとってはやや難しい内容になりますが、print()関数は様々な場面でよく使われるので、一つ一つ理解していきましょう!

Pythonのプログラミング学習に不安を感じている方へ

AIやデータサイエンスを学びたくてPythonを学び始めたけど
「独学ではやっぱり限界がある」
と不安を感じた方にオススメしたいのが、Aidemy Premium Plan
AIに関する幅広い種類の講座徹底したコーチング指導が特徴です!

実務を見据えてPythonをがっつり学習していきたい方は、まずは無料の「オンライン相談」に参加してみてください。

また、Aidemy Premium Planのメリットやデメリットなどについては、以下の記事も参考にしてください。
Aidemy(アイデミー)の評判と口コミまとめ!受講したほうがいい理由を紹介



Pythonのprint()関数の基本的な使い方

文字列・数値をそのまま出力する方法は非常にシンプルです。

文字列を出力する場合: print(‘文字列’)
数値を出力する場合: print(数値)

文字列と数値の違いは、文字列は「’」で囲うが、数値では囲まないということです。

また、変数をあらかじめ定義していた場合は、その変数をprint()関数の()内に記述することで、使用できます

print('I have an apple')
# I have an appleを出力
print(27)
# 27を出力

s = 'I love you'  # 変数を定義
print(s)
# I love youを出力

リストや辞書は、そのまま出力されます。

print([166, 171, 176, 168, 172])
# [166, 171, 176, 168, 172]を出力
print({'Iwai': 1, 'Komiya': 2, 'Yamasato': 3})
# {'Iwai': 1, 'Komiya': 2, 'Yamasato': 3}を出力

Pythonのprint()関数出力の改行を変更する(引数end)

さて、以下のようにprint()関数を記述すると、全て改行されて出力されます。

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.

print()の出力は、文末で改行するようデフォルトで設定されているためです。

文末の改行を別の文字に変更するには、endという引数を渡します。

print(‘文字列’, end=’区切る文字列’)

実際に、改行でなく「|||」で次のprint()関数との区切りをしてみます。

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.
​

空白で区切りたいときは「end =’ ‘」を渡します。

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.

Pythonのprint()関数で複数の文字列・数値を出力する(引数sep)

print()関数で複数の文字列・数値を出力する場合は、()内を「,」で区切ります

print('Red', 'Green', 'Blue')
# Red Green Blue

区切り文字は、デフォルトでスペースとなっています。

この区切り文字を変えたい場合は、sepを引数として渡します。

ここでは、「, 」で区切りたいと思います。

print('Red', 'Green', 'Blue', sep = ', ')
# Red, Green, Blue

また、改行したい場合は、改行コード「\n」を使用しましょう。

print('Red', 'Green', 'Blue', sep = '\n')
# Red
# Green
# Blue

また、リストの要素を出力する際には、リスト(またはその変数)の直前に「*」を付けます

デフォルトでは、空白で区切られ、sepを引数として渡すこともできます。

height = [166, 171, 176, 168, 172]
print(*height)
# 166 171 176 168 172
print(*height, sep = ', ')
# 166, 171, 176, 168, 172

Pythonのprint()関数で、複数の文字列・数値を1つの文字列にする方法(「+」、「%」、formatメソッド)

ここでは、複数の文字列・数値を1つの文字列にする方法を「+」、「%」、formatメソッドに分けて紹介します。

「+」を用いた文字列の出力

「+」を用いることで、文字列と文字列を続けて表示することができます。

sign = 'さそり座'
print('私は' + 'sign' + 'です')
# 私はさそり座です

しかし、次のようなプログラムではエラーが起こってしまいます。

month = 6
print('私は' + month + '月生まれです')
# エラー

これは、文字列と数値という別の型を繋げようとしたためです。

解決するには、数値を文字列に変える必要があります。

数値を文字列に変えるためには、str()関数を使います。

month = 6
print('私は' + str(month) + '月生まれです')
# 私は6月生まれです

「%」を用いた文字列の出力(printf形式)

Pythonのprint()関数では、他のプログラミング言語の「%」を用いたprintfのような形式の出力もできます。

形は、

変数が入る文字列 % 文字列に埋め込みたい変数

です。

変数が入る文字列には、埋め込みたい箇所に「%d」「%f」「%s」といった変換指定子を記述しておきます。

「%d」には整数が、「%f」には浮動小数点数が、「%s」には文字列が埋め込まれます。

month = 6
print('私は%d月生まれです' % month)
# 私は6月生まれです

name = 'Taro'
year = 1930
print('%sは%d年生まれです' % (name, year))
# Taroは1930年生まれです

formatメソッドを用いた文字列の出力

formatメソッドを使うことで、より直感的に文字列に値の埋め込みができます。

変数が入る文字列.format(文字列に埋め込みたい変数)

変数が入る文字列には、{}を用いて埋め込みたい箇所を指定します。

month = 6
print('私は{}月生まれです'.format(month))
# 私は6月生まれです

name = 'Taro'
year = 1930
print('{}は{}年生まれです'.format(name, year))
# Taroは1930年生まれです

インデックスを指定することで、同じ値を繰り返し使えます

name = ‘Taro’
food = ‘りんご’

print(‘{0}は{0}が育てた{1}で作った、{1}のスイーツが大好きです’.format(name, food))
# TaroはTaroが育てたりんごで作った、りんごのスイーツが大好きです

最後に: print()関数の書き方は、シンプルなものから複雑なものまである

print()関数の様々な記述方法を紹介しました。

少し複雑なものもありましたが、Pythonプログラミングを続けていく上でどれも欠かせないものです。

一つ一つしっかりと定着させていきましょう!









この記事をかいた人

Yuuu

Webマーケッター。 統計学やAIにも興味があり、 Python/Octaveを用いたデータサイエンスを学んだり、 G検定に合格したりしている。