1. HOME»
  2. Python入門»
  3. print関数の使い方

print関数の使い方

Python(パイソン)プログラミングにおいての、print関数(かんすう)の使(つか)い方(かた)を学(まな)びましょう。

目次
  1. print関数とは
  2. 文字列や数値の出力
  3. 変数の値を出力
  4. 文字列と変数を組み合わせて出力
  5. 複数のデータを出力
  6. 複数のデータを出力したときの、区切り文字を変更
  7. 最後の改行をなくす、または別の文字に変更
  8. ファイルに出力する
  9. flushを使って、1文字ずつ表示

print関数とは

print()は、データを出力(しゅつりょく)するための関数(かんすう)です。
引数(ひきすう)に指定(してい)したデータを、Windows(ウィンドウズ)のコマンドプロンプトや、Mac(まっく)のターミナル、といった黒(くろ)い画面(がめん)に表示(ひょうじ)します。
(黒い画面、というのはイメージです。黒くないかもしれません)

また、黒い画面ではなく、ファイルに出力することもできます。

print関数は、想像(そうぞう)以上(いじょう)にいろんな使い方があります。
これから、ひとつずつ見(み)ていきましょう。

文字列や数値の出力

まず、文字列(もじれつ)と数値(すうち)を出力(しゅつりょく)してみます。

文字列の場合(ばあい)は、'(シングルクォーテーション)か、"(ダブルクォーテーション)で囲(かこ)います。
数値の場合は、そのまま入力(にゅうりょく)します。

print('こんにちは')
print("こんにちは")
print(13)

実行結果(じっこうけっか)

こんにちは
こんにちは
13

変数の値を出力

print関数(かんすう)は、変数(へんすう)の値(あたい)を出力(しゅつりょく)するのにも使(つか)うことができます。
変数の値を出力するには、変数名(へんすうめい)をそのまま入力(にゅうりょく)します。

number = 13
print(number)

実行結果(じっこうけっか)

13

文字列と変数を組み合わせて出力

たとえば、「彼(かれ)は◯◯歳(さい)です」というふうに、文字列(もじれつ)と変数(へんすう)を組(く)み合(あ)わせた文章(ぶんしょう)を作(つく)りたいときがあります。
方法(ほうほう)はいくつかありますが、f文字列を使った方法が、一番(いちばん)わかりやすいと思(おも)います。

f文字列は、文字列の最初(さいしょ)にfをつけます。
すると、変数を使いたいところに、{変数名}と入力(にゅうりょく)することで、その変数が使えるようになります。

age = 12
print(f'彼は{age}歳です')

実行結果(じっこうけっか)

彼は12歳です

複数のデータを出力

print関数(かんすう)で、複数(ふくすう)の文字列(もじれつ)や数値(すうち)を出力(しゅつりょく)することもできます。

print('Hello', 3, 'こんにちは')

実行結果(じっこうけっか)

Hello 3 こんにちは

複数のデータを出力したときの、区切り文字を変更

print関数(かんすう)で複数(ふくすう)のデータを出力(しゅつりょく)したときの、区切(くぎ)り文字(もじ)を変更(へんこう)することもできます。
区切り文字を変更するには、区切り文字にしたい文字を、sepに代入(だいにゅう)します。

print('おはよう', 'こんにちは', 'こんばんは', sep='、')

実行結果(じっこうけっか)

おはよう、こんにちは、こんばんは

最後の改行をなくす、または別の文字に変更

print関数(かんすう)では、出力(しゅつりょく)したデータの最後(さいご)に改行(かいぎょう)が入(はい)ります。
endを使(つか)うことで、その改行をなくしたり、別(べつ)の文字(もじ)に変更(へんこう)することができます。

まず、改行をなくすには、次(つぎ)のようにします。

print('おはよう', end='')
print('こんにちは', end='')
print('こんばんは')

実行結果

おはようこんにちはこんばんは

また、改行を別の文字に変更するには、次のようにします。

print('おはよう', end='、')
print('こんにちは', end='、')
print('こんばんは')

実行結果

おはよう、こんにちは、こんばんは

ファイルに出力する

print関数(かんすう)では、黒(くろ)い画面(がめん)だけではなく、ファイルに出力(しゅつりょく)することもできます。
ファイルに出力したい場合(ばあい)は、fileにファイルオブジェクトを指定(してい)します。

with open("text.txt", mode='x') as f:
    print('このテキストを保存します', file=f)

実行(じっこう)すると、次(つぎ)のテキストが入力された、text.txtファイルが作(つく)られます。

このテキストを保存します

(上(うえ)の例(れい)では、text.txtファイルがもうすでにあるとき、エラーになります)

flushを使って、1文字ずつ表示

例(たと)えば、「こんにちは」という文字列(もじれつ)を、forループを使(つか)って1文字(もじ)ずつ表示(ひょうじ)させたいとします。
しかし、次(つぎ)の方法(ほうほう)では、しばらく経(た)ったあとに、まとめて「こんにちは」と表示されます。

import time

for i in range(5):
    text = 'こんにちは'
    print(text[i], end="")
    time.sleep(0.5)

そんなときは、flushをTrueにすることで、1文字ずつ「こんにちは」と表示されるようになります。

import time

for i in range(5):
    text = 'こんにちは'
    print(text[i], end="", flush=True)
    time.sleep(0.5)
オリジナルゲーム.com