Pythonで文字列や数値、変数に格納された値などを標準出力に表示するprint関数について説明します。
目次
文字列・数値を表示する
print('Hello World')
# Hello World
print(100)
# 100
変数に格納された値のみを表示する
var = 'Hello World'
print(var)
# Hello World
var = 100
print(var)
# 100
format関数で表示書式を設定する
ゼロ埋め
format関数の引数に08
を指定することで、8桁になるようにゼロ埋めします。
var = 1.234
print(format(var, '08'))
# 0001.234
小数点以下の桁数指定
format関数の引数に.5f
を指定することで、小数点以下が5桁になるように丸めて表示します。
var = 1.2345678
print(format(var, '.5f'))
# 1.23457
print(format(var, '010.5f'))
# 0001.23457
print('{:.0f}'.format(0.49))
# 0
print('{:.0f}'.format(0.5))
# 0
print('{:.0f}'.format(0.51))
# 1
桁数が異なる数値をそろえる
出力結果を綺麗に表示したい場合は、format関数の引数に表示する桁数を指定します。
var1 = 1.234
var2 = 1.2
var3 = 123.456
print(format(var1, '10'))
print(format(var2, '10'))
print(format(var3, '10'))
# 1.234
# 1.2
# 123.456
小数点を揃えて表示する
全桁数と小数点の桁数を大きめで設定すると小数点を揃えることができます。
var1 = 1.234
var2 = 1.2
var3 = 123.456
print(format(var1, '10.5f'))
print(format(var2, '10.5f'))
print(format(var3, '10.5f'))
# 1.23400
# 1.20000
# 123.45600
符号を表示する
var1 = 1.234
var2 = -1.234
print(format(var1, '+'))
# +1.234
print(format(var2, '-'))
# -1.234
桁区切り
format関数に,
を指定することで大きい桁数を見やすくすることができます。
var = 10000000000
print(format(var, ','))
# 10,000,000,000
2進数、8進数、16進数で表示する
var = 100
print(format(var, 'b'))
# 1100100
print(format(var, 'o'))
# 144
print(format(var, 'd'))
# 100
print(format(var, 'x'))
# 64
パーセントで表示する
print('{:%}'.format(0.12345))
print('{:.2%}'.format(0.12345))
# 12.345000%
# 12.35%
リストを表示する
リストをそのまま表示する
リストもprint関数で表示することができます。
l1 = ['aaa', 'bbb', 'ccc']
l2 = [111, 222, 333]
print(l1)
# ['aaa', 'bbb', 'ccc']
print(l2)
# [111, 222, 333]
join関数でリストを連結して表示する
join関数
を使用することで文字列や数値を連結して表示することができます。数値に関してはstr型
に変換する必要があるので内包表記を使用します。
l1 = ['aaa', 'bbb', 'ccc']
l2 = [111, 222, 333]
print(''.join(l1))
print(', '.join(l1))
print(', '.join([str(i) for i in l2]))
print('\n'.join([str(i) for i in l2]))
文字列と変数を組み合わせて表示する
+演算子で結合する
文字列は+演算子
で結合することができます。
name = 'Yumi'
print(name + 'さんこんにちは!')
# Yumiさんこんにちは!
score = 100
print('今日のテストは' + str(score) + '点でした')
# 今日のテストは100点でした
format関数で結合する
ゼロ埋めや小数点以下の桁数など、書式を設定したい場合や、変数が複数存在する場合にformat関数
を使用します。
{}
の中に書式を設定することができます。
var1 = 'abcde'
var2 = 1.234
print(var1 + '_' + str(var2))
# abcde_1.234
print('{}_{}'.format(var1, var2))
# abcde_1.234
print('{}_{:+010.5f}'.format(var1, var2))
# abcde_+001.23400
f文字列(フォーマット済み文字列リテラル)で結合する
Python3.6以降にf文字列
が利用できるようになりました。format関数
よりもさらにシンプルに記述できます。
var1 = 'abcde'
var2 = 1.234
print('{}_{}'.format(var1, var2))
# abcde_1.234
print(f'{var1}_{var2}')
# abcde_1.234
リストを辞書を文字列と結合する
l1 = ['aaa', 'bbb', 'ccc']
l2 = [111, 222, 333]
print('{0[0]}-{0[1]}-{0[2]}'.format(l1))
print('{0[0]}-{0[1]}-{0[2]}'.format(l2))
print('{0[0]},{1[0]}-{0[1]},{1[1]}-{0[2]},{1[2]}'.format(l1, l2))
# aaa-bbb-ccc
# 111-222-333
# aaa,111-bbb,222-ccc,333