print で表示

生田 陸人
LuaGate エンジニア / 現役エンジニア
編集 LuaGate編集部

print で「動いた!」を体験する

このレッスンで分かること

  • print() は文字列を画面 (標準出力) に表示するだけの関数で、戻り値は None
  • return は関数の「答え」を呼び出し元に返す文。chotdekiru の採点は return の値で行う
  • 関数定義は def 関数名(): + インデント (半角スペース 4 つ) で書く
  • 最小コードは次の通り

Python

def hello(): return "Hello, Python!"
  • print で表示してもテストは通らない。必ず return を使う

print で表示 とは

print 関数の役割を学びつつ、文字列を返す関数を書いてみよう。本レッスンでは、print で表示 の基本から実際の使いどころまでを整理し、現場で迷わず使える形に落とし込みます。

Python の世界にようこそ。プログラミング学習の最初の一歩は、ほぼ全ての言語で共通していて、それは「画面に文字を表示する」ことです。Python では print という組み込み関数を使うだけで、文字列を画面に出力できます。コンパイル不要、main 関数も不要、たった 1 行から始められるのが Python の魅力です。

プログラミングは「書いて、動かして、確かめる」のサイクル。最初は print で十分。

このレッスンでは print の基本動作を理解しつつ、関数の戻り値という重要な考え方も同時に学びます。chotdekiru のコーディング問題は return で値を返す関数を書く形式なので、printreturn の違いを早めに掴んでおくと、この後の章がスムーズに進みます。

print 関数とは?

printPython に最初から組み込まれている関数で、print(値) という形で呼び出します。括弧の中に書いたものが標準出力 (stdout) に表示されます。文字列はクオート " または ' で囲み、数値はそのまま渡せます。改行は自動で付くので、\n を自分で書く必要はありません。

Python

print("Hello, world!") print(2026) print("こんにちは", "Python")

3 行目のように、カンマで複数の値を渡すと、半角スペースを挟んで連結されます。sep="-" のようなキーワード引数で区切り文字を変えることも可能ですが、まずは基本形に慣れることを優先しましょう。

print は副作用 (画面に出す) を起こす関数。値を計算して返す return とは別物です。

print と return の違い

ここが初心者がいちばん最初につまずくポイントです。print は人間に向けて画面に表示するだけで、関数の「戻り値」にはなりません。一方 return は、他のコードが続きの処理に使える「値」を返します。

Python

def greet_print(): print("Hello") def greet_return(): return "Hello" x = greet_print() # x は None になる y = greet_return() # y は "Hello" になる

printreturn の使い分け早見表

観点printreturn
目的人間が画面で確認する関数の「答え」を呼び出し元に渡す
戻り値常に Nonereturn の右側の値
chotdekiru 採点採点対象外これと expected を比較する
使う場面デバッグ・ログ出力計算結果を返す関数本体

chotdekiru のテストランナーは return された値を expected と比較します。print でいくら正しい文字列を表示しても、return を書かないとテストは None と比較されて失敗します。print はデバッグ用、return は採点用、と覚えると混乱しません。

動きを追ってみる

関数を呼び出してから戻り値を受け取るまでの流れを図にすると、次のとおりです。

diagram (will load when visible)

実行ステップ (図と同じ内容を箇条書きで再掲)

  1. 呼び出し元が hello() を実行
  2. Python は hello 関数の中に入り、上から順に処理する
  3. return "Hello, Python!" に到達した瞬間、その値を持って関数を抜ける
  4. 戻り値 "Hello, Python!" が呼び出し元に渡される (y = hello() なら y に入る)
  5. return の後の行は実行されない

呼び出し元から関数へ「お願い」が飛び、関数の中で return 文に到達した瞬間に、その値を持って呼び出し元に戻ってきます。return の後ろの行は実行されないので、長い関数の中でも return は終端マーカーになります。

よくある間違い

初学者が printreturn を混同する代表的なパターンは次の通りです。

  • return を書き忘れて関数が None を返す
  • return print("Hello") のように print の戻り値をそのまま返す (これは None)
  • 文字列を "Hello のように閉じクオートを書き忘れて SyntaxError
  • 全角クオート “Hello” を使ってしまい SyntaxError
  • インデントが空白 4 つになっていなくて IndentationError

エラーが出たら、まずクオートが半角で揃っているかを確認する癖をつけましょう。

また、print(Hello) のようにクオートなしで文字列を書くと、Hello という名前の変数を探しに行って NameError になります。文字列は必ずクオートで囲む、これは最初の鉄則です。

やってみよう

このレッスンの課題は、hello という関数を作って、文字列 Hello, Python!return する ことです。print ではなく return を使う点に注意してください。

Python

def hello(): return "Hello, Python!"

短いですが、これが Python で関数を定義する基本形です。def 関数名(): の後にコロンを書き、インデント (半角スペース 4 つ) を入れてから処理を書きます。インデントは Python の文法そのものなので、揃っていないと IndentationError になります。

慣れてきたら、return f"Hello, {name}!" のように引数を受け取ったり、printreturn を 1 つの関数の中で組み合わせたりして遊んでみると、関数の感覚がぐっと掴めます。

おまけ — Python が動く仕組みをざっくり

Python のコードは、CPython というインタプリタが 1 行ずつ読み込んで、バイトコード という中間表現に翻訳してから実行します。C 言語や Rust のような事前コンパイル型と違って、書いたそばから動かせるのが大きな特徴です。今書いた def hello(): も、保存した瞬間に解釈・実行されます。

「書く → すぐ動く → 結果を見る」のループが短いから、Python は学習に向いていると言われます。

テストランナーの裏側でも、まさにこの仕組みで solution が実行され、return の値が expected と一致するかをチェックしています。print の出力は採点対象に含まれないので、繰り返しになりますが必ず return を使ってください。これが第 1 章で身につけてほしい最重要ポイントです。

よくある質問

Q. print() と return の違いは何ですか?

A. print() は文字を画面に出すだけで関数の戻り値は None になります。return は関数の処理結果を呼び出し元に返す命令で、その値を変数に代入したり計算に再利用できます。テストでは return の値しか検証できないため、関数を作るときは return を使いましょう。

Q. 改行なしで出力するにはどうしますか?

A. print('hello', end='') のように end 引数に空文字を渡すと末尾の改行が消えます。区切り文字を変えるなら end=' ' でスペース区切り、複数値を 1 行に並べるなら print(a, b, sep=', ') のように sep を指定するのが定番です。

Q. 複数の値を一度に出力したいときは?

A. print(a, b, c) と引数を並べれば順に出力されます。文字列に値を埋め込むなら f-string が便利で、print(f'name={name}, age={age}') と書けば変数を直接展開できます。改行で区切りたい場合は print(a, b, sep='\n') を使います。

次のレッスン

次は 文字列を連結する で、print 関数の役割を学びつつ、文字列を返す関数を書いてみよう を学びます。

事前確認 — 進む前に次の 3 つができることを確認しましょう。

  1. print で表示 の要点を自分の言葉で説明できる
  2. このレッスンの最小コード (または操作手順) を見ずに書ける
  3. 練習問題やクイズで間違えた箇所を読み直して理解した

理解度チェック (30 秒)

Q. print で表示 とは何か、1 文で説明してください。

この章のポイント

A. 本文の「このレッスンで分かること」または冒頭の説明文を見直し、自分の言葉で要約できれば OK。詰まったら本レッスンの最初の H2 セクションを読み返してみましょう。

関連レッスン

要件

  1. 関数名は hello で、引数は取らない
  2. 文字列 "Hello, Python!" を return する
  3. print ではなく return を使う

入出力例

test-cases.txt

hello()"Hello, Python!" hello()"Hello, Python!" hello()"Hello, Python!"

ヒント

main.py
main.py
学習モード

メモ

print で表示

⌘S で保存