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

Pythonでタプルとリストが同一かどうかを確認する方法

タプルとリストが同一であるか、つまり両者が同じ要素を含んでいるかどうかを確認したい場合は、シンプルなループを使って簡単に判定できます。

なお、リストは異なる型の値(整数、浮動小数点数、文字列など、あらゆるデータ型のデータ)を格納できる柔軟なデータ構造です。

以下に具体的なコード例を示します。

サンプルコード

my_tuple_1 = ('Hi' , 'there', 'Will')
my_list = ['How' ,'are' ,'you']

print("The tuple is : ")
print(my_tuple_1)
print("The list is : ")
print(my_list)

my_result = True
for i in range(0, len(my_list)):
    if(my_list[i] != my_tuple_1[i]):
        my_result = False
        break
print("Are the tuple and list identical ? ")
print(my_result)

実行結果

The tuple is :
('Hi', 'there', 'Will')
The list is :
['How', 'are', 'you']
Are the tuple and list identical ?
False

コードの解説

  • タプルとリストを定義し、コンソールに表示します。
  • 変数 my_result に初期値として True を代入します。
  • リストを先頭から順に走査し、リストの各要素とタプルの対応する要素を比較します。
  • 要素が一致しない場合は、True を代入していた変数に False を代入します。
  • break 文でループを抜け出します。
  • 最終的な結果は、変数に格納されたブール値(True / False)となります。
  • その結果をコンソールに出力します。

補足:より簡潔な比較方法

ループを書かなくても、タプルをリストに(またはリストをタプルに)変換してから == 演算子で比較すれば、同様の判定を一行で行えます。

print(list(my_tuple_1) == my_list)   # False
print(my_tuple_1 == tuple(my_list))  # False

この例では両者の内容が異なるため False が出力されます。なお、要素数が異なる場合も必ず False になる点には注意してください。また、順序も含めて完全に一致している必要があるため、要素の並び順が違う場合も同一とは判定されません。

  1. Pythonのリスト(list)とタプル(tuple)の違いを徹底解説!使い分けのポイント

    Pythonには複数の値をまとめて扱うためのデータ構造として「リスト(list)」と「タプル(tuple)」が用意されています。どちらもシーケンス型の一種で似たような使い方ができますが、「変更可能かどうか」「処理速度」「メモリ効率」などの点で大きな違いがあります。この記事では、それぞれの特徴とコード例、そして6つの観点からの比較表を使って、両者の違いと使い分けのポイントをわかりやすく解説します。リスト(list)とはリストは、異なる型のオブジェクトを格納できるミュータブル(変更可能)なコンテナです。要素の追加・削除・変更が自由に行えるため、データの入れ替えや繰り返し処理(イテレーション)によく

  2. Pythonで2つのリストが循環的に同一かどうかを判定する方法

    この記事では、2つのリストが与えられたとき、それらが循環的に同一(circularly identical)であるかどうかを判定するPythonプログラムを紹介します。循環的に同一とは、片方のリストの要素を回転させたとき、もう片方のリストと完全に一致する状態を指します。 実行例 入力 : A = [100, 100, 10, 10, 100] B = [100, 100, 100, 10, 10] 出力 : True 解説 リストAの要素を順番に循環的に回転させると、リストBと同じ並びになるため、結果は True となります。つまり、開始位置が異なるだけで、要素の並びのパター