Pythonで文字列の長さを取得する方法!len()の基本と応用テクニック
生徒
「先生、Pythonで文字の長さを数えたいときってどうしたらいいんですか?」
先生
「それにはlen()という関数を使えば簡単にできますよ!」
生徒
「へえ!それって文章にも使えるんですか?」
先生
「もちろんです。では、Pythonのlen()関数を使って、文字列の長さを取得する方法を見ていきましょう!」
1. len()関数とは?
len()は、Pythonで「中身の数」や「文字数」を調べるための基本関数です。文字列に使うと、文章に含まれる文字の個数を数えてくれます。はじめての人は「括弧の中に数えたい対象を入れる」と覚えると理解しやすいでしょう。
text = "Python"
length = len(text)
print(length)
6
英単語のような短い文字列でも、len()は正確に文字数を返します。結果は数(整数)で返ってくる点もポイントです。
title = "Hello World!"
print(len(title))
12
空白や句読点、感嘆符などの記号も1文字として数えます。見た目に惑わされず、「含まれている要素の数」を返していると考えると理解しやすいです。
msg = "こんにちは��"
print(len(msg))
6
日本語の全角文字や一般的な絵文字も、そのまま1文字として扱われます。名前やメッセージの長さ確認など、日常的な用途でも安心して使えます。
empty = ""
print(len(empty))
0
何も入っていない文字列は長さが0です。入力チェックで「未入力かどうか」を素早く判定するときに便利です。
このように、len()は「数えたい対象をそのまま渡すだけ」で動く扱いやすい関数です。まずは短い例で手を動かし、結果の数字と文字列の関係を確かめていくと、後の応用もスムーズになります。
2. 日本語も数えられる?
日本語の文章やひらがな・カタカナ・漢字もlen()で数えられます。全角文字は1文字として数えられるので、見た目の大きさに関係なく「いくつの文字が入っているか」をそのまま確認できます。
text = "こんにちは"
print(len(text))
5
「こ・ん・に・ち・は」で5文字です。シンプルな挨拶文でも、正しく文字数が数えられます。
a = "東京タワー"
b = "パイソン入門"
print(len(a))
print(len(b))
5
6
漢字・カタカナ・長音記号が混ざっていても1文字ずつ丁寧に数えられます。読みやすいタイトルの長さ確認にも向いています。
title = "今日のメモ 。"
print(len(title))
7
スペースや句読点は見落としがちですが、1文字としてカウントされます。掲示板のタイトル制限やフォーム入力チェックのときに役立ちます。
msg = "がんばろう��"
print(len(msg))
6
よく使う絵文字は多くの場合1文字として扱われます。応援メッセージや通知文の長さ確認にも使いやすいでしょう。
まとめると、len()は日本語・英数字・スペース・記号をまとめて「文字数」として数えます。入力の上限チェックやレイアウト調整の前段階として、まずはlen()で長さを確かめる習慣をつけると実務でも便利です。
3. 空文字(からもじ)はどうなる?
空文字列とは、何も書かれていない文字列のことです。これもlen()で調べられます。
text = ""
print(len(text))
0
何も入っていないので、長さは0になります。
4. 文字列だけじゃない!リストやタプルにも使える
len()は文字列以外にも、リストやタプルなどの複数のデータが入っているものにも使えます。
items = ["りんご", "バナナ", "ぶどう"]
print(len(items))
3
このように、len()はリストや辞書などにも使える万能な関数です。
5. 文字列の長さを使って条件分岐に応用
文字列の長さを使えば、文章が短いか長いかで条件分岐もできます。
text = "これはテストです"
if len(text) > 10:
print("長い文章です")
else:
print("短い文章です")
短い文章です
len(text)で文字数を調べて、条件に応じた処理をしています。
6. 入力された文字の長さをチェック
ユーザーが入力した文字の長さを確認することもできます。
text = input("お名前を入力してください: ")
print(f"{text}さんのお名前は{len(text)}文字です")
このように、文字の長さを使って入力内容のチェックも可能です。
7. 応用:最長の文字列を見つける
len()を使って、複数の文字列の中で最も長いものを探すこともできます。
words = ["パイソン", "データ", "プログラミング"]
longest = max(words, key=len)
print(f"一番長い単語は「{longest}」です")
一番長い単語は「プログラミング」です
max()にkey=lenを渡すことで、文字数で比べて一番長い文字列を見つけられます。
まとめ
今回はPythonで文字列の長さを取得する方法としてlen()関数を中心に学んできました。len()は文字列だけでなく、リストやタプルなど様々なオブジェクトに対応しており、Python初心者にとって非常に頼れる基本関数です。
文字列に対して使えば、「何文字あるか」を数えることができ、日本語でも英語でも、記号を含んでいても、1文字ずつ正確にカウントできます。
また、空文字の長さが0であることや、リストや辞書など複数のデータに対しても使える点は、後々のプログラムの中でとても役に立ちます。
特に入力チェックや条件分岐、長さによる処理の分け方など、実際のアプリケーションでもよく使われるテクニックです。
そして、max()関数と組み合わせることで、最も長い文字列を探し出す応用例も見てきましたね。
これらの基本操作をきちんと理解しておくことで、今後のPython学習や実践的なコード作成にも大きく役立ちます。
■ 練習:入力された文章が何文字か調べてみよう
最後に簡単な練習問題として、ユーザーからの入力を受け取って、その長さを表示するコードをもう一度確認しておきましょう。
text = input("好きな言葉を入力してください: ")
length = len(text)
print(f"「{text}」は{length}文字です")
このようなコードを自分で書いて動かすことで、Pythonの基本操作に慣れていけます。とにかく試してみることが上達への近道です。
生徒
「先生、len()って文字だけじゃなくて、リストやタプルにも使えるのがすごいですね!」
先生
「そうなんです。Pythonのlen()関数は、とても柔軟にいろんなデータに対応できるのが特徴です。」
生徒
「日本語でも1文字ずつちゃんと数えてくれるのが嬉しいです。入力の長さチェックにも使えそうですね。」
先生
「その通りです。たとえば名前が何文字かを確認したり、文章の長さで条件を分けたり、実用的な使い方がたくさんありますよ。」
生徒
「これからもlen()をいろんな場面で使ってみたいと思います!」
先生
「その意気です!基礎をしっかり押さえておけば、応用もすぐにできるようになりますよ。」