Python len関数の使い方を初心者向けに徹底解説!

Python len関数の使い方を初心者向けに徹底解説!

和田 康宏

開発エンジニア/新卒6期/ボールド歴2年10ヶ月

プログラミングをする際、文字列の長さや配列の要素数を取得して、それに応じた処理を行う場面が多く出てきます。Pythonにおいてそのような処理を行いたい場合、len関数を使うと実現できます。本記事では、len関数の使い方と使用例を解説します。

就活生向け特設ページ

1.len関数について

まずは、len関数がどういうものかを解説します。

1-1.len関数とは

len関数は、オブジェクトのサイズを取得する関数です。ここでいうオブジェクトとは、文字列の長さやリスト、タプル、辞書などの配列の要素数を指します。指定の文字数以上かを確かめたり、配列が空になっていないかをチェックしたりするときなどによく使われます。

1-2.len関数の構文

len関数の構文は以下の通りです。

len(オブジェクト)

上記のように記述すると、引数に指定されたオブジェクトのサイズを整数で取得することができます。

1-3.len関数の基本的な例文

続いて、例文を用いてlen関数の使い方を解説します。

1-3-1.文字列の長さを取得する

len関数で文字列の長さを取得する場合を解説します。

title_size = len("enginner-club")
print(title_size) #13が出力される
title = "エンジニアクラブ"
print(len(title)) #8が出力される

len関数の引数に文字列、または文字列を格納した変数を指定してください。そうすると、指定された文字列の文字数を取得できます。上記のように、全角や半角は関係なく文字数を取得することが可能です。

1-3-2.リスト・タプルの要素数を取得する

len関数でリストやタプルの要素数を取得する場合を解説します。

#リスト
lang = ["English","Japanese","French"]
print(len(lang)) #3が出力される
#タプル
prgraming_lang = ("Java","Python","PHP","Perl")
print(len(prgraming_lang)) #4が出力される

len関数の引数にリスト、またはタプルを指定してください。そうすると、その要素数を取得できます。リストかタプルかによって挙動の違いはありません。

1-3-3.セットの要素数を取得する

続いて、セットの要素数を取得する場合を解説します。セットの場合も同様にlen関数の引数に指定すれば要素数を取得できますが、注意点があります。下記のソースをご覧ください。

#セット
lang = {"English","English","English","English"}
print(len(lang)) #1が出力される

人間の目で見ると、langには4つの要素が格納されているように見えますが、1が出力されます。これは、セットが重複しない要素の集合を格納するものであり、langの要素がすべてEnglishであるため、1が出力されてしまう、ということです。このように、人間の目で見た内容と違う出力結果が出ることもあるので、オブジェクトの特性をよく理解しておく必要があります。

1-3-4.辞書の要素数を取得する

続いて、辞書の要素数を取得する場合を解説します。下記のソースをご覧ください。

#辞書
alphabet = {1: "A", 2: "B", 3: "C"}
print(len(alphabet)) #3が出力される

引数に上記のような辞書を指定して出力させると、3が出力されます。辞書の場合はkey:valueの組み合わせの数が要素数となるので、3が出力されるということです。


2.len関数の使用例

本章では、len関数の使用例を簡単に解説します。

2-1.指定の文字数以上かを判定する

アンケートの質問やパスワードなど、「〇〇文字以上入力させる」という要件はよくあると思います。そのようなときに、len関数を使ってそれを満たしているかを判定することができます。下記のソースをご覧ください。

kansou_len = 0

while kansou_len < 30:
    kansou = input("感想を30文字以上入力してください: ")
    kansou_len = len(kansou)

print("感想の入力ありがとうございます")

上記が感想を30文字以上入力させるプログラムです。変数kansouに格納された文字数が30文字以上かどうかを判定し、それに満たなければ30文字以上入力するまで繰り返します。このように、指定の文字数以上を入力させたいときにlen関数を活用すると簡単に判定することができます。

2-2.リストが空でない時だけ処理を行う

プログラミングにおいて、リスト内の要素を取り出して処理を行う場面が非常に多く出てきます。しかし、「リスト内に要素が格納されている」前提のもとでプログラムを組んでしまうと、万が一リストが空だった時に予期せぬ動作をすることがあります。それを防ぐため、「リストが空でないときに」だけやりたい処理を実行するロジックがとても有効です。

list = []

if len(list) > 0:
    for i in list:
        print(i)
else:
    print("listが空です")

上記において、listが空であったときにlen(list)は必ず0になります。したがってif文などで0より大きいかそうでないかを判定すれば、listが空でないときにだけやりたい処理を行うことができます。


3.まとめ

Pythonにおけるlen関数について解説しました。大変便利で頻繁に使われる関数なので、基本的な使い方はぜひ理解するようにしましょう。

私たちは、全てのエンジニアに市場価値を高め自身の望む理想のキャリアを歩んでいただきたいと考えています。もし、今あなたが転職を検討しているのであればこちらの記事をご一読ください。理想のキャリアを実現するためのヒントが見つかるはずです。

『技術力』と『人間力』を高め定年まで働けるエンジニアを目指しませんか?

私たちは「技術力」だけでなく「人間力」の向上をもって、エンジニアとしてだけでなくビジネスパーソンとして高い水準を目指し、社会や顧客に必要とされることで、関わる人々に感動を与える集団であろうと思っています。

  • 定年までIT業界で働くためのスキルが身につく「感動大学」と「技術勉強会」!
  • 「給与が上がらない」を解消する6ヶ月に1度の明確な「人事評価制度」!
  • 理想のエンジニア像に近づくためのよきアドバイザー「専任コーチ制度」!
  • 稼動確認の徹底により実現できる平均残業時間17時間の働きやすい環境!

現在、株式会社ボールドでは「キャリア採用」のエントリーを受付中です。

まずは以下のボタンより弊社の紹介をご覧いただき、あなたの望むキャリアビジョンをエントリーフォームより詳しくお聞かせください。

コメント

文系IT未経験歓迎!株式会社ボールドの 採用エントリー を受付中!
文系IT未経験歓迎!
株式会社ボールドの 採用エントリー を受付中!