Pythonのprintの書式と使い方の具体例

Python3一行では、文字列や数値などのデータの出力にはprint関数を使うようになりました。

ここではprint関数の基本書式に加えて、特に重要な以下の4つの点を解説します。

  • print関数でデータの値を出力する方法
  • print関数で変数のデータを出力する方法
  • 出力の際に区切り文字を挿入する方法
  • 出力の際に末尾文字を挿入する方法
  • print関数の改行の扱いについて

早速見ていきましょう。

目次

1. Pythonのprint関数の基本書式

まず、Pythonのprint関数の基本書式は以下の通りです。

In [ ]:
print('出力したい値')

括弧()の中に値を書くと、それが出力されます。なお、関数の()の中に入れる値を「引数(ひきすう)」といいます。そして、引数に値を書くことを「関数に引数を渡す」といいます。

これを図にすると以下のようになります。

Pythonのprint関数では、様々なデータを出力することができます。実際に例を見ていきましょう。

1.1. 引数にデータを直接書いてprint

1.1.1. 数値のprint

まずは数値です。数値の基礎については『初心者のためのPythonの数値計算の基礎知識』をご覧ください。

In [1]:
#数値を出力します。
print(100)
100

print関数の引数に渡した値が出力されていますね。引数に計算式をそのまま書くこともできます。

In [2]:
#引数に計算式を書く。
print(100+100)
print(10*10)
print(2**3)
print(100-3*30)
200
100
8
10

ご覧のように引数に渡した計算式の結果が出力されます。

1.1.2. 文字列のprint

次に文字列です。文字列の基礎については『初心者のためのPythonの文字列操作の基本』をご覧ください。

In [2]:
#文字列を出力します。
print('これは文字列です。')
これは文字列です。

引数に渡した文字列がそのまま出力されます。

1.1.3. リストのprint

そしてリストです。リストの基礎は『初心者のためのPythonのリストの作成方法まとめ』でご確認ください。

In [3]:
#リストを出力します。
print(['みかん', 'りんご', 'いちご'])
['みかん', 'りんご', 'いちご']

引数に渡したリストがそのまま出力されます。

1.1.4. タプルのprint

以下がタプルです。タプルの基礎は『初心者のためのPythonのタプルの基本操作とポイントまとめ』です。

In [4]:
#タプルを出力します。
print(('きゅうり', 'にんじん', 'とまと'))
('きゅうり', 'にんじん', 'とまと')

引数に渡したタプルがそのまま出力されます。

1.1.5. 辞書のprint

最後に辞書です。辞書の基礎は『初心者のためのPythonの辞書の基本と作成方法まとめ』をご覧ください。

In [5]:
#辞書を出力します。
print({'住所':'東京', '年齢':34, '職業':'パイソニスタ'})
{'住所': '東京', '年齢': 34, '職業': 'パイソニスタ'}

引数に渡した辞書がそのまま出力されます。

ここまで見てきたように、print関数は、引数に渡したデータをそのまま出力してくれます。

1.2. 引数に変数を書いてprint

引数に変数を書いて、変数の中身をprintすることもできます。見ていきましょう。

1.2.1. 数値を代入した変数のprint

In [1]:
#数値を代入した変数を出力します。
num = 100
print(num)
100

次のように変数での計算も行えます。

In [2]:
#数値を代入した変数同士での計算
num_1 = 100
num_2 = 10
print(num_1 + num_2)
print(num_1 * num_2)
print(num_1 / num_2)
110
1000
10.0

1.2.2. 文字列を代入した変数のprint

In [1]:
#文字列を代入した変数を出力します。
text = 'これは文字列です。'
print(text)
これは文字列です。

1.2.3. リストを代入した変数のprint

In [1]:
#リストを代入した変数を出力します。
list = ['みかん', 'りんご', 'いちご']
print(list)
['みかん', 'りんご', 'いちご']

1.2.4. タプルを代入した変数のprint

In [1]:
#タプルを代入した変数を出力します。
tuple = ('きゅうり', 'にんじん', 'とまと')
print(tuple)
('きゅうり', 'にんじん', 'とまと')

1.2.5. 辞書を代入した変数のprint

In [1]:
#辞書を出力します。
dict = {'住所':'東京', '年齢':34, '職業':'パイソニスタ'}
print(dict)
{'住所': '東京', '年齢': 34, '職業': 'パイソニスタ'}

なお『Pythonのprintで変数の中身を出力するいろいろな方法』では、このページの解説よりもさらに踏み込んで、さまざまな変数の出力方法を解説していますので、ぜひご確認ください。

2. Pythonのprint関数のオプション引数

ここからprint関数のオプション引数について解説します。オプション引数とは、出力するデータ以外の引数で、出力の仕方を指定するものです。

例えば、下図をご覧ください。

引数に渡している text_a と text_b はどちらも出力したいデータの値です。後の二つは出力したいデータではなく、出力のされ方を指定するものです。そのため、「オプション引数」といいます。

なお、関数の引数は、前から第一引数、第二引数というように呼びます。それでは、オプション引数について解説していきます。

2.1. 区切り文字を指定するオプション引数 sep=”

sep=”は、print関数の引数に複数のデータの値を渡す時、その値の間を区切る文字を指定するものです。次のように書きます。

In [ ]:
#オプション引数 sep='' の書きかた
print(値1, 値2, 値3, sep='挿入したい区切り文字')

実際に見る方が理解が簡単なので、早速見ていきましょう。まず、print関数の引数に複数の値を渡すと、次のように、値の間に空白(半角スペース)が入った上で出力されます。

In [1]:
#変数に数値を代入します。
a = 100
b = 200
c = 300
 
#一緒にprint関数の引数に渡すと、それぞれの値の間に空白が入ります。
print(a, b, c)
100 200 300

sep=” で区切り文字を指定することで、空白の代わりに別の文字を挿入することができます。次のコードをご覧ください。

In [4]:
#区切り文字を使うと、より見やすくすることができます。
print(a, b, c, sep=',') #カンマで区切ります。
print(a, b, c, sep=', ') #カンマ+半角スペースで区切ります。
print(a, b, c, sep='_')#アンダーバーで区切ります。
100,200,300
100_200_300
100, 200, 300

このように、指定した文字で値の間を区切ることができます。

文字列の場合も見てみましょう。区切り文字を指定しない場合、次のように文字列の間に空白が入った上で出力されます。

In [5]:
#文字列に変数を代入します。
a = 'ユニクロ'
b = 'アローズ'
c = 'ビームス'
 
#一緒にprintするとこうなります。
print(a, b, c)
ユニクロ アローズ ビームス

ここに sep=” で別の区切り文字を入れることができます。以下をご覧ください。

In [6]:
#区切り文字をいれてみましょう。
print(a, b, c, sep='と') 
print(a, b, c, sep='か') 
ユニクロとアローズとビームス
ユニクロかアローズかビームス

簡単ですね。

2.2. 末尾の文字を指定するオプション引数 end=”

次に、末尾に任意の文字を挿入するオプション引数 end=” を見ていきましょう。以下が基本書式です。

In [ ]:
#オプション引数 end='' の基本書式
print(, end='')

第一引数に出力したい値を書いて、その後にオプション引数 end=” を書きます。

実際に見てみましょう。以下では、普通に文字列変数 text をprintで出力しています。

In [1]:
#まず普通に文字列を出力してみましょう。
text = 'あなたはカレーが好きです'
print(text)
あなたはカレーが好きです

オプション引数 end=” を使って、この文字列を疑問文に変えてみましょう。

In [2]:
#末尾に疑問形である「か?」という文字列を追加します。
print(text, end='か?')
あなたはカレーが好きですか?

いかがでしょうか。見事に変わりましたね。

なお、オプション引数 end=” には、これ以外にもよく見られる便利な使いかたがあります。『Pythonのprintのendのよくある3つの使い方』で解説していますので、併せてご確認ください。

3. print関数の改行について

続いて、悩まれる人が多いprint関数の改行の扱いについて説明します。

3.1. print関数で改行した上で出力する

printで出力する際に、改行して表示したい時もあります。その時は、次のように改行コード \n を使います。

In [1]:
#''\n'で改行です。
print("This is a\ntest string.")
This is a
test string.

コード上のみで改行して、出力の時は改行を反映したくない時は \ を使います。

In [2]:
#コード上のみで改行する場合は'\'を使います
print("This is a \
very long \
very very long \
string.")
This is a very long very very long string.

コード上でも、出力上でも改行したい場合は、クオートを前後に3つ繋げて文字列を入力します(ダブルクオートでもシングルクオートでも構いません)。

In [3]:
#クオート ' を前後に3つずつ繋げるとコード上でも出力上でも改行です。
text_p = """this is not a 
very long
string."""
 
#確認しましょう。
print(text_p)
this is not a 
very long
string.

これらは『Pythonのprintで改行して出力する方法まとめ』で詳しく解説していますので、そちらでご確認ください。

3.2. print関数で改行しないで出力する

Pythonでprint関数を続けて実行すると、一つ一つの改行の上で出力されるのがデフォルトです。

以下をご覧ください。

In [1]:
text_a = "abc"
text_b = "def"
 
#print()関数を並べると改行されて表示されます。
print(text_a)
print(text_b)
abc
def

これ防ぐには複数の方法があります。

まずは、関数に複数の値を同時に渡す方法です。

In [2]:
#print()関数に複数の文字列オブジェクトを引数として渡します
print(text_a, text_b)
abc def

次に、上で解説したオプション引数 end=” を応用的に使う方法です。

In [3]:
#オプション引数の'end'を空で渡すと改行なしになります。
print(text_a, end="")
print(text_b)
abcdef

そして+演算子で連結する方法です。

In [6]:
text_c = "This is a"
text_d = "test string."
 
#単純に+演算子で結合すると…
text_e = text_c + text_d
print(text_e)
 
#半角スペースも同時に結合しましょう。
text_f = text_c + " " + text_d
print(text_f)
This is atest string.
This is a test string.

これらは『Pythonのprintで改行しないで出力する方法まとめ』で詳しく解説していますので、そちらでご確認ください。

4. まとめ

いかがだったでしょうか?

Python3では、print()関数を使って文字列を出力するようになりました。

また、オプション引数の sep=” や end=” を使うと、見た目をキレイに整えることができます。またここでは触れていませんが、『Pythonのprintのformatで知っておきたい操作まとめ』で解説しているformatメソッドやfプリフィクスを知っておくと、さらにさまざまな操作をすることができます。

焦らず、一つずつ、地道に学習していきましょう。



よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

目次
閉じる