カテゴリ: Python 更新日: 2026/07/13

Pythonで大文字・小文字を変換する方法!upper()・lower()・capitalize()

Pythonで大文字・小文字を変換する方法!upper()・lower()・capitalize()
Pythonで大文字・小文字を変換する方法!upper()・lower()・capitalize()

先生と生徒の会話形式で理解しよう

生徒

「Pythonで文字を全部大文字にしたり、小文字にしたりすることってできますか?」

先生

「はい、できますよ。Pythonではupper()lower()capitalize()というメソッドを使って、文字の大文字や小文字を自由に変換できます。」

生徒

「メソッドって何でしたっけ?」

先生

「メソッドは、あるデータに対して特別な命令をするものです。今回は文字列に対して命令を出すメソッドですね。では順番に見ていきましょう!」

1. Pythonで文字を大文字に変換するupper()の使い方

1. Pythonで文字を大文字に変換するupper()の使い方
1. Pythonで文字を大文字に変換するupper()の使い方

Pythonで文字列をすべて大文字に変換したいときは、upper()というメソッドを使います。このメソッドは、アルファベットの小文字だけを狙って大文字に書き換えてくれる非常に便利な命令です。

例えば、プログラミング学習の最初のステップとして、自分の名前や好きな言葉を大文字にしてみましょう。使い方はとても簡単で、対象となる文字列(変数)のあとに.upper()と付けるだけです。プログラミングが初めての方でも、これだけで文字を操作する楽しさが実感できるはずです。


# 変換したい文字列を変数に入れます
text = "python programming"

# upper()を使って大文字に変換した結果を表示します
result = text.upper()
print(result)

PYTHON PROGRAMMING

実行結果を見ると、すべてのアルファベットが大文字に変わっているのが分かりますね。ここで注目したいポイントは、「全角の日本語」や「数字」が含まれていてもエラーにならないという点です。日本語や数字はそのまま維持され、英字の部分だけがスマートに変換されます。


# 日本語や数字が混ざっている場合
mix_text = "python 3年生"
print(mix_text.upper())

PYTHON 3年生

このように、データの中にどんな文字が混ざっていても安心して使うことができるため、ユーザー登録時のID整理など、実務的な場面でも頻繁に利用されています。

2. 全ての英字を小文字に変換するlower()メソッドの使い方

2. 全ての英字を小文字に変換するlower()メソッドの使い方
2. 全ての英字を小文字に変換するlower()メソッドの使い方

Pythonで文字列を操作する際、アルファベットの大文字と小文字を区別せずに処理したい場面がよくあります。そんな時に便利なのがlower()メソッドです。

このメソッドは、対象となる文字列の中に含まれる全ての大文字を小文字に置き換えた新しい文字列を返してくれます。元の文字列自体は書き換えられないため、プログラミング初心者の方でも安心して使うことができます。

■ 基本的な書き方と実行例

まずは、変数に入れた文字列を小文字に変換する簡単なサンプルプログラムを見てみましょう。


# 変換したい文字列を用意します
greeting = "HELLO Python World!"

# lower()を使って小文字に変換し、結果を表示します
lower_text = greeting.lower()
print(lower_text)

■ 実行結果


hello python world!

このように、大文字の「H」や「P」がすべて小文字に統一されました。日本語や数字、記号などはそのまま維持され、英字だけが変換の対象となります。

例えば、ユーザーが入力した「Emailアドレス」や「検索キーワード」の大文字・小文字のバラつきを揃える(正規化する)際など、実務でも非常によく使われる重要なテクニックです。

3. 最初の1文字だけ大文字にするcapitalize()の使い方

3. 最初の1文字だけ大文字にするcapitalize()の使い方
3. 最初の1文字だけ大文字にするcapitalize()の使い方

Pythonで「文章の先頭だけをピシッと大文字に整えたい」という時に役立つのが、capitalize()メソッドです。このメソッドは、文字列の最初の1文字目を大文字に、それ以降の文字をすべて小文字に変換してくれる便利な機能を持っています。

特にプログラミング未経験の方にとって、「大文字と小文字が混ざった入力データを綺麗に統一したい」といった場面で重宝します。以下のサンプルコードで実際の動きを確認してみましょう。


# 全体が小文字のケース
text1 = "python is fun!"
print(text1.capitalize())

# 途中が大文字のケース(2文字目以降は自動的に小文字になります)
text2 = "pYTHON IS FUN!"
print(text2.capitalize())

実行結果は以下の通りです。


Python is fun!
Python is fun!

このように、元の文字列がバラバラな状態でも、capitalize()を使えば「英文のルール(文頭だけ大文字)」に則った形へ一瞬で変換できます。名簿の名前を整えたり、ブログのタイトルを整形したりする際など、ユーザーが入力したテキストの表記ゆれを防ぎ、読みやすい記事やシステムを作るための第一歩として非常に重要な処理です。

4. upper()・lower()・capitalize()は「文字列専用」のメソッド

4. upper()・lower()・capitalize()は「文字列専用」のメソッド
4. upper()・lower()・capitalize()は「文字列専用」のメソッド

Pythonで文字の大きさを変えるupper()lower()capitalize()といったメソッドを使う際に、一番注意しなければならないのが「これらは文字列(str型)専用の機能である」という点です。

プログラミング初心者の方がよくつまずくポイントですが、数値(整数や浮動小数点数)に対してこれらの操作を直接行うことはできません。もし数値に対して実行しようとすると、「そんな機能は数値には備わっていません」というエラー(AttributeError)が発生してプログラムが止まってしまいます。


# 数値に対してそのまま使うとエラーになります
price = 500
# print(price.upper())  # 実行するとエラー!数値には「大文字」という概念がないためです

もし、どうしても数字を文字として加工したい場合は、一度str()関数を使って「数値から文字列」へ型変換を行う必要があります。こうすることで、Pythonはそのデータを「計算用の数字」ではなく「ただの文字」として認識し、メソッドが使えるようになります。


# 正しい手順:一度str()で文字列に変換してから変換メソッドを呼び出す
user_id = 101
formatted_id = str(user_id).upper() # この場合は変化ありませんが、エラーは出ません
print("IDは" + formatted_id + "です")

# 応用:小文字のアルファベット混じりのコードを扱う場合
product_code = "a102"
print(product_code.upper()) # 結果:A102(文字列なのでそのまま使える)

このように、「今扱っているデータが文字列なのか、それとも数値なのか」を意識することが、エラーを防ぐための第一歩となります。

5. 文字列の比較にも便利!大文字・小文字を区別せず一致させる方法

5. 文字列の比較にも便利!大文字・小文字を区別せず一致させる方法
5. 文字列の比較にも便利!大文字・小文字を区別せず一致させる方法

プログラミングでよくある落とし穴が、「大文字と小文字の違い」です。コンピュータは人間と違って、「Apple」と「apple」を別の文字として認識してしまいます。そのため、ユーザーが入力した値を確認する際に、大文字が混ざっているだけでエラーや判定ミスが起きてしまうのです。

この問題をスマートに解決するのが、文字列をすべて小文字に変換するlower()メソッドや、大文字に変換するupper()メソッドです。比較する前にどちらか一方の形式に「統一」してしまうことで、表記ゆれによるミスを確実に防ぐことができます。


# ユーザーに文字を入力してもらう
answer = input("「yes」か「no」で答えてください:")

# 入力された文字をすべて小文字に変換してから判定する
if answer.lower() == "yes":
    print("「はい」が正しく選択されました!")
else:
    print("「いいえ」、またはその他の文字が入力されました。")

このコードを使えば、ユーザーが「YES」「Yes」「yEs」など、どんな打ち方をしても、プログラム側で一旦「yes」に変換してから比較するため、すべて正解として処理できます。これは会員サイトのログインIDチェックや、検索フォームのキーワード判定など、実務でも非常によく使われるテクニックです。未経験の方も、まずは「比べる前に変換して揃える」という流れを覚えておきましょう。

6. capitalize()で日本語は変換されない

6. capitalize()で日本語は変換されない
6. capitalize()で日本語は変換されない

capitalize()は英語のようなアルファベットには効果がありますが、日本語の文字には影響がありません。


text = "こんにちは"
print(text.capitalize())

こんにちは

このように、日本語には大文字小文字の区別がないため、変化しないのです。

7. 応用編:複数の単語の先頭だけ大文字にするtitle()

7. 応用編:複数の単語の先頭だけ大文字にするtitle()
7. 応用編:複数の単語の先頭だけ大文字にするtitle()

title()メソッドは、文章の中にあるすべての単語の最初の文字だけを大文字にしてくれます。


text = "python is very fun"
print(text.title())

Python Is Very Fun

英文タイトルや見出しを作るときに役立ちます。

8. 大文字・小文字を一括で変換する実用例

8. 大文字・小文字を一括で変換する実用例
8. 大文字・小文字を一括で変換する実用例

たとえば、メールアドレスをすべて小文字にそろえたり、パスワードの大文字だけをチェックしたい場合にもこれらのメソッドが活用できます。


email = "UserName@Example.Com"
print(email.lower())

username@example.com

このように、統一された形にしておくことで、比較や保存がスムーズになります。

9. 練習問題:文字の変換をやってみよう

9. 練習問題:文字の変換をやってみよう
9. 練習問題:文字の変換をやってみよう

次の文字列をすべて大文字、小文字、最初の文字だけ大文字にしてみましょう。


text = "hello Python"
print(text.upper())
print(text.lower())
print(text.capitalize())

HELLO PYTHON
hello python
Hello python

それぞれのメソッドの違いを比べて、どんなときに使えばいいかを覚えておきましょう。

まとめ

まとめ
まとめ

Pythonで大文字や小文字の変換を行う方法として紹介してきたupper()、lower()、capitalize()は、文章処理やデータ整理、入力内容の正規化のような場面で非常に役立つ基本的なメソッドです。これらの操作を理解しておくことで、ユーザー入力を適切な形式にそろえたり、検索や比較を正確に行ったり、文章の見た目を整えて一貫性ある表現を維持したりと、多くの実践的なケースに対応できるようになります。特にWebアプリケーションやデータ分析の処理では、ユーザーが入力する文字列が一定の形式になっていないことが多いため、こうした大文字小文字の統一は欠かせない作業です。また、メールアドレスを小文字にそろえて比較したり、英文タイトルを整えるためにtitle()を使ったりするなど、さまざまな分野で頻繁に利用される機能でもあります。 文字列操作の基本として理解しておくべきポイントは、英語のアルファベットには大文字と小文字が存在する一方、日本語にはその区別がないため、capitalize()やtitle()は日本語には効果がないという点です。Pythonがどのように文字を扱っているのかを知ると、メソッドの動作にも納得感が生まれ、誤解なく使いこなせるようになります。また、変換メソッドはあくまで「文字列」に対する操作なので、数値に使うことはできません。必要に応じてstr()で文字列に変換し、そこから大文字小文字を調整するという手順も重要になります。 入力された単語を比較したいときにも、大文字小文字をそろえることは非常に有効です。たとえば「YES」「Yes」「yEs」のように大文字小文字が混ざっている場合でも、lower()でそろえて比較すれば意図した判断ができます。これは実際のユーザー入力ではよくあるケースで、大小文字を気にしない柔軟性は、使いやすいシステムを作るうえで欠かせません。特に、アンケート回答やテキスト入力フォーム、コマンド入力形式のプログラムでは、入力のゆれを吸収できるこの仕組みが大いに役立ちます。 さらに、文章やタイトルのフォーマットを整える場面では、capitalize()やtitle()がとても便利です。ブログタイトルを作ったり、文章の先頭だけ整えたり、複数の単語の頭文字を整えて見た目を良くするなど、文章の品質を上げたいときに重宝します。Pythonはこうした処理を簡単なメソッドで実現できるため、複雑なコードを書く必要がありません。初学者でも直感的に使える点は、大きなメリットと言えます。コードを書く作業に慣れてくると、文章の整形や正規化を自動で行うちょっとしたスクリプトを書くことが多くなり、これらのメソッドが自然と身についていきます。 また、今回紹介したupper()、lower()、capitalize()、title()は組み合わせて使うことで、より柔軟で高度な文字列処理が可能になります。例えば、複数の入力を一定の形式に変換してからデータベースに保存する処理や、比較する前に必ずlower()を適用して誤解を防ぐ処理、文章の整形を行うスクリプトなど、あらゆる用途で役立つでしょう。こうした基本的な文字列操作こそ、Pythonの実践力を高めるうえで非常に価値があります。

サンプルコード:まとめとして使える文字列変換の総合例


text = "Python programming Is FUN!"

# すべて大文字
print(text.upper())

# すべて小文字
print(text.lower())

# 最初の1文字だけ大文字
print(text.capitalize())

# 単語ごとの先頭を大文字に
print(text.title())

# 入力の比較に使う例
user_input = "YES"
if user_input.lower() == "yes":
    print("はいと判断されました")

このサンプルでは複数の変換メソッドをまとめて確認でき、基本操作を復習しながら実際の処理でもそのまま応用できます。大文字と小文字の変換は、プログラムの質を高め、利用者にとっても扱いやすい仕組みを作るために欠かせない技術です。

先生と生徒の振り返り会話

生徒

「今日の内容で、大文字と小文字の変換ってかなりいろんな場面で役に立つんだなって感じました!」

先生

「そうですね。文章や入力内容を整える処理では欠かせませんし、検索や比較の精度も上げてくれます。特にlower()を使って文字をそろえるテクニックは多くのプログラムで使われていますよ。」

生徒

「title()やcapitalize()は文章の見た目を整えるのに便利でした。実際のブログ作成とかでも使えそうです!」

先生

「まさにそのとおりです。文章処理を自動化するときに大きな力を発揮します。Pythonのこうした機能を覚えていくことで、自分で作れるものの幅がどんどん広がりますよ。」

生徒

「今日の学びを使って、入力を正規化するプログラムを作ってみようと思います!」

コメント
コメント投稿は、ログインしてください

まだ口コミはありません。

Python の文字列操作の記事一覧へ
新着記事
New1
Python
Pythonの変数とは?定義方法とデータ型を初心者向けに解説
New2
PHP
PHP の型変換を完全ガイド!初心者でもわかる明示的変換・自動変換
New3
PHP
PHPのCSVファイルの読み書きと文字列処理を基礎から解説!初心者向けガイド
New4
PHP
PHPのメモリ管理と変数の破棄方法をやさしく解説!初心者でもわかるunsetの使い方
人気記事
No.1
Java&Spring記事人気No1
Python
PythonでAPIリクエストを送信する方法を完全解説!requestsライブラリで簡単API通信
No.2
Java&Spring記事人気No2
Python
Pythonで経過時間を計測する方法を完全解説!初心者でもわかる time.perf_counter() と time.sleep()
No.3
Java&Spring記事人気No3
Python
Pythonのコンストラクタ(__init__)の使い方!初心者でもわかるオブジェクトの初期化
No.4
Java&Spring記事人気No4
PHP
PHPの配列をソートする方法!sort, rsort, asort, ksortの使い方を丁寧に解説します!
No.5
Java&Spring記事人気No5
PHP
PHP のフォームデータの受け取り($_POST, $_GET)を完全解説!初心者向けガイド
No.6
Java&Spring記事人気No6
Python
Pythonのタプルの要素を変更できない理由とその回避策を初心者向けに解説
No.7
Java&Spring記事人気No7
ChatGPT
ChatGPTでPythonコードを作成する方法!プロンプトの書き方と質問例を解説
No.8
Java&Spring記事人気No8
Python
Pythonのrequestsライブラリ完全入門!HTTPリクエストの送り方を初心者向けにやさしく解説