【Python】print関数で文字を表示する方法(練習問題・課題付き)

Pythonののprint関数を用いて文字を表示する方法と理解を深めるための問題を解説します。

Pythonで文字を表示する方法

Python(パイソン)というプログラミング言語では、画面に文字を表示するために「print(プリント)」という命令を使います。以下のような1行のプログラムを書いて実行すると、画面に「こんぴこー」と表示されます。

print("こんぴこー")

使い方は簡単で、print() の丸括弧内に表示したい言葉を「”(ダブルクォーテーション)」で囲んで書くだけです。もし、プログラムの作成と実行方法がわからない場合、以下ページの「2. プログラムの作成と実行方法」をご参照ください。

Python公式インストーラでWindowsにインストールする方法
Python公式インストーラでWindows環境にPythonをインストールする方法について紹介します。

プログラムの実行結果を画面に表示することは、すべてのプログラミング学習の第一歩となります。重要ポイントを以下にまとめましたので、しっかり理解しましょう。

項目 説明
ポイント① print()」は、Pythonに「これを画面に表示してね」とお願いするための命令です。このような命令のことを、プログラミングでは「関数(かんすう)」と呼びます。関数は、あらかじめ決められた「仕事」をしてくれる便利な道具です。
ポイント② コードの大文字と小文字は区別されるので注意しましょう。例えば、print()関数の「print」はすべて小文字です。「Print(“こんぴこー”)」などと一部を大文字にするとエラーが出ます。
ポイント③ Pythonのコードは基本的にすべて半角文字で書く必要があります。Pythonは英語圏で開発された言語なので、全角文字を使うと、Pythonが「意味不明な記号」として認識し、SyntaxError(構文エラー)になります。
【例】
print(“こんぴこー”) ← エラーになります
ポイント④ print()関数で画面(コンソール)に文字や数値を表示することを「標準出力」 といいます。標準出力とは、コンピュータプログラムが結果を出すときの「デフォルトの出口」のことです。Pythonでは、何も特別な設定をしなければ、画面(コンソール)が標準出力になります。つまり、print()関数は、その標準出力にデータを送るためのものです。

ここで、プログラミング初心者には聞き馴染みのない単語がいくつが登場しました。以下の表にまとめましたので、理解しましょう。

用語 意味・特徴 例え(料理レシピ) Pythonでの使われ方の例
プログラム 命令のまとまり 料理のレシピ 「このプログラムはデータを分析します」
ソースコード 人が読める命令文 レシピの文章部分 「ソースコードを修正してみましょう」
コード ソースコードとほぼ同じ レシピの文章(広義) 「このコードは何をしているの?」
プログラムファイル ソースコードを保存したファイル レシピが書かれた紙 main.py」というプログラムファイルを実行してみましょう」
スクリプト 比較的短くて、特定の作業を自動化するためのプログラム 時短レシピ 「このPythonスクリプトで作業が楽になります」
エラー プログラムの実行中に起こる問題。プログラムが止まる原因 料理中に「材料が足りない」と気づく エラーが出たので、コードを直しましょう」
バグ プログラムの中にある間違い。意図しない動作の原因。プログラムは動くけど、結果が間違っているなど」状態。気づきにくい。 レシピに「砂糖と塩を間違えた」 「このバグのせいで結果が正しく出ません」
【Python】プログラミングで登場する基本用語を解説
Pythonプログラミングで登場する基本用語について詳しく解説します。

「変数」に日本語を入れてみよう

変数(へんすう)」とは、あとで使うために名前をつけてデータを保存しておく箱のようなものです。たとえば、次のコードを実行すると、「こんにちは」とコンソール画面に表示されます。

a = "こんにちは"
print(a)

イコール「=」は、数学の「左右が同じ」という意味ではなく、右側の値を左側の変数に入れるという「代入(だいにゅう)」の記号です。つまり、1行目では、「a」という名前の箱に「こんにちは」という言葉を入れています。そして、2行目ではprint()関数で「a」という名前の箱に入っている「こんにちは」という言葉を表示しています。

プログラムは、コンピュータに「何をどうやってやるか」を順番に教えるレシピのようなものです。料理のレシピが「①材料を切る → ②鍋に入れる → ③火にかける」と順番に書かれているように、プログラムも「上から下へ」順番に命令を実行します。つまり、先程のプログラムは、次のように実行されます。

① `a = “こんにちは”`が実行され、「a」という名前の箱に「こんにちは」という言葉を入れる。
② `print(a)` が実行され、変数aの箱の中身(”こんにちは”)を画面に表示する。

もし以下のように、順番を逆にしてしまった場合、print(message)の時点では変数aがまだ存在していないので、エラーとなります。

print(a)
a = "こんにちは"

■実行結果(エラーメッセージ:aという名前は定義されていません)

Traceback (most recent call last):
  File "c:\github\sample\python\basic\print\sample002.py", line 1, in 
    print(a)
          ^
NameError: name 'a' is not defined

また、以下のようにセミコロン ; を使うことで、複数の命令を1行にまとめて書くことができます。この場合、左から右へ順番に実行されます。

a = "こんにちは"; print(a)

Pythonでは基本的に1行に1つの命令を書くのが読みやすさの面で推奨されますが、簡単な処理なら上記のようにまとめることも可能です。

【ポイント】
①「=」は「〜を入れる」という意味。
②`message = “こんにちは”` は「messageという箱に『こんにちは』を入れる」ということ。
③ プログラムは **上から順番に** 実行される。
④ セミコロン `;` を使えば、複数の命令を1行にまとめて書くことが可能(読みやすさを考えると、1行に1つの命令を書くのがベター)

よくある質問(初心者向けQ&A)

Q. 日本語がうまく表示されないことはありますか?

A. ほとんどの環境では問題なく表示されますが、古いパソコンや特殊な設定では文字が「???」などに変わることがあります。その場合は、プログラムファイルの保存形式が「UTF-8」になっているか確認してください。

Q. 文字を改行して表示したいときは?

A. 以下のように「\n(バックスラッシュ・エヌ)」を使うと、改行できます。

print("こんにちは\nこんばんは")

■実行結果

こんにちは
こんばんは

と2行に分けて表示されます。

練習問題(基礎固め & 資格勉強用)

本ページで学んだ内容の基礎を固めるため、また「Python 3 エンジニア認定基礎試験」や「基本情報技術者試験」など、Python関連のIT資格の取得を目指す方に向けて、練習問題を作成しました。

【問題1】print関数の基本

次のコードの出力として正しいものを選びなさい。

print("こんにちは")

A. こんにちは
B. “こんにちは”
C. print(“こんにちは”)
D. エラーになる


正解:こんにちは
解説:print()関数は、カッコ内の文字列をそのまま画面に表示します。
この場合、ダブルクォーテーションで囲まれた「こんにちは」という文字列がそのまま出力されます。

【問題2】文字列の囲み方

次のうち、Pythonで文字列を正しく表す書き方はどれか。
A. print(こんにちは)
B. print(‘こんにちは’)
C. print(“こんにちは”)
D. print(”こんにちは”) ←全角のダブルクォーテーション


正解: B, C
解説: Pythonでは文字列を ' ' または " " で囲みます。
Aは囲みがないためエラー。Dは全角の記号を使っているため構文エラーになります。

【問題3】変数の使い方

次のコードを実行したときの出力として正しいものを選びなさい。

message = "おはよう"
print(message)

A. message
B. “message”
C. おはよう
D. エラーになる


正解: C. おはよう
解説: message に文字列を代入し、print(message) でその中身を表示します。
変数名そのものは表示されません。

【問題4】変数の定義順序

次のコードを実行するとどうなるか。

print(greeting)
greeting = "こんばんは"

A. こんばんはと表示される
B. greetingと表示される
C. エラーになる
D. 何も表示されない


正解: C. エラーになる
解説: Pythonは上から順に実行します。
greeting が定義される前に使われているため NameError が発生します。

【問題5】大文字・小文字の区別

次のコードを実行するとどうなるか。

Print("やあ!")

A. やあ!と表示される
B. print関数が呼ばれる
C. エラーになる
D. 何も表示されない


正解: C. エラーになる
解説: Pythonは大文字・小文字を区別します。
Print は標準関数ではないため NameError になります。(printが正しい)

【問題6】改行の方法

次のコードの出力として正しいものを選びなさい。

print("こんにちは\nこんばんは")

A. こんにちは こんばんは
B. こんにちは\nこんばんは
C. こんにちは
こんばんは
D. エラーになる


正解: C. こんにちは(改行)こんばんは
解説: \n は「改行」を意味する特殊文字です。
画面上では2行に分かれて表示されます。

【問題7】セミコロンの使い方

次のコードの出力として正しいものを選びなさい。

a = "ありがとう"; print(a)

A. エラーになる
B. ありがとう
C. a
D. セミコロンが表示される


正解: B. ありがとう
解説: Pythonではセミコロン ; を使って1行に複数の命令を書くことができます。

【問題8】変数の説明

次の説明のうち、Pythonにおける「変数」の定義として最も適切なものはどれか。
A. 文字列を表示するための関数
B. データを一時的に保存する名前付きの箱
C. プログラムの終了を制御する命令
D. Pythonにしか存在しない特殊な記号


正解: B. データを一時的に保存する名前付きの箱
解説: 変数は、値を一時的に保存するための「名前付きの記憶場所」です。
初心者には「箱」に例えると理解しやすいです。

【問題9】実行順序の理解

次のコードの実行順序として正しいものを選びなさい。

a = "こんにちは"
print(a)

A. print → a の順に実行される
B. a → print の順に実行される
C. 並列に実行される
D. 実行順序はランダム


正解: B. a → print の順に実行される
解説: Pythonは上から順にコードを実行します。
まず a に値を代入し、その後 print(a) で表示します。

【問題10】エラー予測

次のコードを実行するとどうなるか。

print("こんにちは")
print("こんばんは"

A. こんにちは こんばんはと表示される
B. エラーになる
C. 何も表示されない
D. 改行されて表示される


正解: B. エラーになる
解説: 2行目の print("こんばんは" に閉じカッコ ) がありません。
これは構文エラー(SyntaxError)になります。

課題(実践力強化用)

Pythonプログラミングの実践力を強化したい人向けの課題を用意しました。特にエラーメッセージを読んでコードを修正するという作業は、プログラミングおいて重要ですので、初心者の方は是非チャレンジしてみてください。

課題① コード作成

以下の仕様を満たすPythonコードを1から書いてください。

  • 「こんぴこーこんぴこー」と「お元気ぴこですかー?」を、それぞれ別の行に表示する
  • 改行には \n を使わず、print() を2回使うこと

【出力例】

こんぴこーこんぴこー
お元気ぴこですかー?

仕様を満たすコードは次のようになる。

print("こんぴこーこんぴこー")
print("お元気ぴこですかー?")

課題② コード修正

以下のコードを実行するとエラーが表示されます。
コードを修正して、「こんぴこーこんぴこー」と正しく表示されるようにしてください。

Print("こんぴこーこんぴこーこんぴこー")

■実行結果(エラーメッセージ:printという名前は定義されていません)

Traceback (most recent call last):
  File "c:\github\sample\python\basic\print\sample004_error.py", line 1, in 
    Print("こんぴこーこんぴこーこんぴこー")
    ^^^^^
NameError: name 'Print' is not defined. Did you mean: 'print'?

エラー文の最初に書かれた NameError は「その名前のものが見つからない」という意味です。
次の行には、見つからなかった名前(Print)と、Pythonが提案する正しい名前(print)が示されています。
よって、`Print` のPが大文字になっているのが原因だとわかります。Pythonでは関数名は小文字である必要があります。

■修正後のコード

print("こんぴこーこんぴこーこんぴこー")

課題③ コード修正

以下のコードを実行するとエラーが表示されます。
コードを修正して、「こんぴこーこんぴこー」と正しく表示されるようにしてください。

print(”こんぴこーこんぴこーこんぴこー”)

■実行結果(エラーメッセージ:printという名前は定義されていません)

  File "c:\github\sample\python\basic\print\sample004_error.py", line 1
    print(”こんぴこーこんぴこーこんぴこー”)
          ^
SyntaxError: invalid character '”' (U+201D)

`SyntaxError` は「文法エラー」のことです。
エラー文の最後に `’”’ (U+201D)` と書かれていて、問題の文字(全角の”)とコード位置(`^` の場所)からもprint()関数内の“全角のカギ括弧”が原因だとわかります。
Pythonは半角の `”` または `’` だけを文字列の囲みに使えます。 全角の「”」を半角の `”` に置き換えてみましょう。

■修正後のコード

print("こんぴこーこんぴこーこんぴこー")

関連ページ(もっと学びたい人へ)

Pythonの基礎から応用例まで、以下ページから学ぶことができます。

【Python超入門】基礎から応用例まで幅広く解説
Pythonの使い方について、基礎文法から応用例まで入門者向けに解説します。
この記事を書いた人
西住技研

プログラミング言語「Python」を研究、仕事、趣味でデータ分析や作業自動化などに活用してきたノウハウを情報発信しています。
筆者の詳しいプロフィールやお問合せはこちらのページまで。
YoutubeX(旧Twitter)でも情報発信中です!

西住技研をフォローする
Python基礎

コメント

  1. 兵藤 釧八 より:

    お世話になります。
    # -*- coding: utf-8 -*-

    print(“こんにちは”) # 「こんにちは」と表示
    上記をVscode にコピーすると、中国文字が表示されます。なにが悪いのですか?

    • 管理人 より:

      ※兵藤 釧八様
      コメントありがとうございます。
      日本語が文字化けしているのですね。
      お使いのPC環境とPythonのバージョンを教えていただけますでしょうか。