ゼロからのPython入門講座辞書オブジェクト in 演算子

辞書辞書の操作in 演算子

辞書にキーが登録されているかどうか調べるときは、in 演算子を使います。

in 演算子は <== のような 比較演算子 の一種で、

キー in 辞書オブジェクト

という式は、指定したキー値が辞書オブジェクトに登録されていれば True を、登録されていなければ False を返します。

次の例では、キー値 "apple" は辞書 english_words に登録されていますので、in 演算子は True を返します。

In [17]:
english_words = {"apple": "りんご", "orange": "みかん", "peach": "もも"}
print("apple" in english_words)
True

しかし、"dog" の場合は登録されていないので、False を返します。

In [18]:
english_words = {"apple": "りんご", "orange": "みかん", "peach": "もも"}
print("dog" in english_words)
False

練習問題

in 演算子を使って、次のようなプログラムを書いてみましょう。

  1. input() 関数を使って、文字列を入力します。
  2. 1. で入力した文字列が辞書オブジェクト english_words に登録されていたら、対応する日本語を出力します。登録されていなければ、"登録されていません" と出力します。
In [2]:
english_words = {"apple": "りんご", "orange": "みかん", "peach": "もも"}

key = input("英単語を入力してください")

if key in english_words:
    # キーが english_words に登録されている
    print(english_words[key])
else:
    # キーが english_words に登録されていない
    print("登録されていません")
英単語を入力してください orange
みかん

このプログラムは、まず input() 関数で入力した文字列を変数 key に代入します。

次に変数 keyenglish_words に登録されている場合は、if 文に指定した条件式

key in english_words

True になるので、

print(english_words[key])

が実行されて対応する日本語を出力します。

変数 keyenglish_words に登録されていない場合は、if 文に指定した条件式

key in english_words

False になるので、 else節の

print("登録されていません")

が実行されます。

Copyright © 2001-2023 python.jp Privacy Policy python_japan
Amazon.co.jpアソシエイト
Amazonで他のPython書籍を検索