1. りんごと120で「りんご 120円」になる
  2. 牛乳と198で「牛乳 198円」になる
  3. 金額が0でも同じ規則でつなぐ
  4. 品名が長くてもそのままつなぐ
  5. 品名が空文字でも先頭に空白が1つ入るだけ
コース一覧
Python入門:基礎文法編
文字列の連結

Python入門:基礎文法編

変数、条件分岐、ループ、関数、リスト・辞書、ファイル操作など Python の基礎文法を、ブラウザ上で毎レッスン実際にコードを書き、自分だけの「おこづかい帳アプリ」を育てながら学べる無料コースです。プログラミング完全未経験から始められ、環境構築や事前知識は一切不要です。約 18 時間 (1 日 30 分 × 37 日) で 74 レッスンを修了でき、修了後は入力・集計・ファイル保存まで備えたスクリプトを1から書けるようになります。

1
はじめての Python
01. printで表示15分
02. 文字列の連結15分
03. 四則演算15分
04. 実行順序15分
05. コメント15分
06. エラーを読んでみる15分
07. つくる:レシート表示15分
08. 第1章クイズ10分
2
変数とデータ型
01. 変数15分
02. typeで型を調べる15分
03. 数値への変換15分
04. 文字列への変換15分
05. boolとNone15分
06. f-string15分
07. 入力を受け取る15分
08. つくる:入力できるおこづかい帳15分
09. 第2章クイズ10分
3
演算子と式
01. 比較演算子15分
02. 論理演算子15分
03. in演算子15分
04. 剰余と切り捨て除算15分
05. 連鎖比較と優先順位15分
06. 三項演算子15分
07. つくる:予算チェック15分
08. 第3章クイズ10分
4
条件分岐
01. if文の基本15分
02. if / elif / else15分
03. 条件の組み合わせ15分
04. match文15分
05. 定番:FizzBuzz判定15分
06. デフォルト値とor15分
07. つくる:カテゴリ自動判定15分
08. 第4章クイズ10分
5
ループ
01. forで合計15分
02. whileで繰り返す15分
03. rangeとstep15分
04. breakとcontinue15分
05. enumerateで番号付け15分
06. zipで組み合わせ15分
07. 入れ子ループ15分
08. つくる:何件でも記録15分
09. 第5章クイズ10分
6
関数
01. 関数を定義する15分
02. 引数と戻り値15分
03. デフォルト引数15分
04. キーワード引数15分
05. 複数の戻り値15分
06. divmod15分
07. 変数のスコープ15分
08. lambda関数15分
09. つくる:関数に分割15分
10. 第6章クイズ10分
7
リストと辞書
01. リストの追加と削除15分
02. スライス15分
03. 辞書の基本15分
04. 辞書を走査15分
05. keyでソート15分
06. setで重複除去15分
07. リスト内包表記15分
08. タプルアンパック15分
09. つくる:カテゴリ別集計15分
10. 第7章クイズ10分
8
ファイルとエラー処理
01. ファイルを読み込む15分
02. ファイルに書き込む15分
03. withで安全に扱う15分
04. CSV形式で保存15分
05. try-exceptで備える15分
06. 例外の種類15分
07. つくる:保存機能15分
08. 第8章クイズ10分
9
総合制作
01. 全機能を統合しよう15分
02. 月間レポート機能15分
03. 自由拡張15分
04. 完成と次のステップ10分

文字列の連結

文字列の繰り返しと連結

品名も金額も、記録するたびに変わる

前回の見出しは、いつ呼んでも同じ文字列でした。ですが実際のおこづかい帳では、品名も金額も記録するたびに変わります。バラバラの文字を 1 本につなげる仕組みが要ります。

Python では、文字列と文字列を + でつなげます。この操作を連結と呼びます。

Python

print("食費" + "の合計")

食費の合計 と出ます。+ は数値を足すときにも使う記号ですが、左右が文字列のときは「くっつける」働きに変わります。同じ記号が、左右の種類で顔を変えます。

すき間は自分で足す

+ は指示どおり忠実につなぐだけで、気を利かせて空白を入れてはくれません。

Python

print("東京" + "晴れ") print("東京" + " " + "晴れ")

上は 東京晴れ、下は 東京 晴れ です。真ん中の " " は、ダブルクオートの中に半角スペースが 1 つだけ入った文字列です。見た目には何も無いようでも、れっきとした文字列の 1 つです。全角スペースは別の文字なので、半角で打ってください。

つなぐ数に上限はありません。"a" + "b" + "c" は左から順に処理されて abc になります。

決め打ちをやめて、外から受け取る

"食費" のようにコードへ直接書いてしまうと、その値しか扱えません。外から渡された値を使いたいときは 引数 を使います。関数名のうしろのかっこの中に名前を書いておくと、呼び出すときに渡した値がその名前で使えます。

Python

def to_memo(text): return text + " のメモ" print(to_memo("交通費"))

text が引数です。to_memo("交通費") と呼ぶと text の場所に "交通費" が入り、交通費 のメモ が返ります。引数の名前は自分で決められるので、中身が分かる英単語を付けます。

引数を使うときはクオートで囲みません。return "text" + " のメモ" と書くと、中身ではなく text という 4 文字がそのまま返ってしまいます。

やってみよう

関数 price_label を実装してください。引数は品名 name と金額の文字列 price_text の 2 つです。この 2 つを半角スペース 1 つでつなぎ、末尾に 円 を足した文字列を返します。

price_label("りんご", "120") なら りんご 120円、price_label("牛乳", "198") なら 牛乳 198円 です。金額が "0" のときも特別扱いはいらず ノート 0円 になります。テストは 1 文字違うだけで落ちるので、末尾の 円 まで見直してください。

金額を数値ではなく文字列で受け取るのは、"りんご" + 120 のように文字列と数値を混ぜると TypeError で止まるからです。今回は最初から文字列で渡ってくる、という前提にしています。

要件

  1. 関数名は price_label で、引数は name と price_text の2つ
  2. name と price_text の間には半角スペースを1つだけ入れる
  3. 末尾に「円」を付けた文字列を return する
  4. 引数はクオートで囲まずそのまま使う

入出力例

price_label("りんご", "120") → "りんご 120円" price_label("牛乳", "198") → "牛乳 198円" price_label("ノート", "0") → "ノート 0円" price_label("チョコレートアイス", "298") → "チョコレートアイス 298円" price_label("", "50") → " 50円"

ヒント

文字列どうしは + でつなげます

半角スペースは " " という1文字の文字列で表せます

name + " " + price_text まで書けたら、最後に + "円" を足します

全角スペースではなく半角スペースを使ってください

生田 陸人
監修生田 陸人
ゆめさくエンジニア / 現役ソフトウェアエンジニア監修者プロフィールを見る →
編集 ゆめさく編集部·公開 2026/08/05·更新 2026/08/26

関連レッスン

  • 四則演算

    足し算と引き算を使って、予算から支出を引いた残額を計算する

  • 実行順序

    コードが上から順に実行されることを、レシート3行を組み立てながら確認する

  • コメント

    # で意図をコードに残す方法と、コメントが実行されないことを確認する

  • エラーを読んでみる

    SyntaxError と NameError の読み方を覚え、壊れたコードを自分で直す

このレッスンに出てくる用語

意味があいまいなまま進んだ語は、ここから読み直せます。

  • 処理計算や代入を表す長方形
  • 引数位置引数=順番で渡す。
  • 関数処理に名前を付けて再利用できる単位
  • テストバグを見つける工程
main.py
学習モード
エディタを読み込んでいます

メモ

文字列の連結

⌘S で保存