Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonでタプルや辞書から特定の値を取り出す方法をわかりやすく解説

はじめに

Pythonでは、タプル(tuple)と辞書(dict)という2つの代表的なデータ構造が用意されており、それぞれ値の取り出し方が異なります。この記事では、タプルからインデックスを指定して値を取得する方法と、辞書からキーを指定して値を取得する方法を、具体的なコード例とともに解説します。

タプル:インデックスを使って要素を取得する

タプル内の各要素には、先頭から順に 0, 1, 2, … という番号(インデックス)が自動的に割り当てられます。スライス演算子である角括弧 [] を使うことで、任意のインデックスにある要素へアクセスできます。

>>> T1 = (12, "Ravi", "B.Com FY", 78.50)
>>> print(T1[2])
B.Com FY

上記の例では、3番目の要素(インデックスは 2)である "B.Com FY" が出力されています。また、負のインデックスを使えば後ろから数えて要素を取得することも可能です(例:T1[-1] なら最後の要素 78.50)。

辞書:キーを使って値を取得する

辞書の要素はインデックスによって管理されていません。代わりにキーと呼ばれる名前でデータを管理し、キーを角括弧 [] の中に指定することで、それに関連付けられた値を取得します。さらに、辞書が持つ get() メソッドを使っても同じように値を取り出せます。

>>> D1 = {"Rollno": 12, "class": "B.com FY", "percentage": 78.50}
>>> print(D1['class'])
B.com FY
>>> print(D1.get('class'))
B.com FY

[] と get() の違い

どちらも同じ結果になりますが、存在しないキーを指定した場合の挙動が異なります。

  • D1[キー]:存在しないキーを指定すると KeyError が発生します。
  • D1.get(キー):存在しないキーを指定してもエラーにならず、None を返します。第二引数でデフォルト値を指定することもできます。
>>> print(D1.get('address', '未登録'))
未登録

まとめ

  • タプルはインデックスで管理され、[] を使って特定位置の要素を取得できる。
  • 辞書はキーで管理され、[] または get() メソッドで値を取得できる。
  • 存在しないキーへの安全なアクセスには get() が便利。

用途に応じてこれらの方法を使い分けることで、より安全で読みやすいPythonコードを書くことができます。

  1. Pythonで辞書から負の値を除外する2つの方法(forループとlambda関数)

    データ分析を行っていると、辞書から負の値を取り除きたいという場面によく出会います。これを実現するには、辞書内の各要素をループで処理し、条件を使って値をチェックする必要があります。本記事では、この処理を実装できる2つのアプローチを紹介します。 forループを使用する方法 まずは、forループを使って辞書の要素を順番に処理する方法です。各反復処理の中で items() 関数を使い、要素の値と0を比較することで、負の値かどうかを判定します。 サンプルコード dict_1 = {x:10, y:20, z:-30, p:-0.5, q:50} print ("元の辞書 :", s

  2. 【Python】与えられた数がフィボナッチ数かどうかを判定する方法を解説

    本記事では、以下の問題文に対する解決策について詳しく学んでいきます。 問題の定義 数値 n が与えられたとき、その数がフィボナッチ数であるかどうかを判定します。 ご存知のとおり、n番目のフィボナッチ数は「直前の2つのフィボナッチ数の和」として定義されます。しかし、この漸化式以外にも、フィボナッチ数には興味深い数学的な性質が存在します。 フィボナッチ数の判定に使える重要な性質 ある数 n がフィボナッチ数であるのは、次の条件が成り立つ場合、かつその場合に限られます。 5×n² + 4 が完全平方数である または 5×n² − 4 が完全平方数である つまり、上記のどちらか一方(または両方)が