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 になる点には注意してください。また、順序も含めて完全に一致している必要があるため、要素の並び順が違う場合も同一とは判定されません。
-
Pythonのリスト(list)とタプル(tuple)の違いを徹底解説!使い分けのポイント
Pythonには複数の値をまとめて扱うためのデータ構造として「リスト(list)」と「タプル(tuple)」が用意されています。どちらもシーケンス型の一種で似たような使い方ができますが、「変更可能かどうか」「処理速度」「メモリ効率」などの点で大きな違いがあります。この記事では、それぞれの特徴とコード例、そして6つの観点からの比較表を使って、両者の違いと使い分けのポイントをわかりやすく解説します。リスト(list)とはリストは、異なる型のオブジェクトを格納できるミュータブル(変更可能)なコンテナです。要素の追加・削除・変更が自由に行えるため、データの入れ替えや繰り返し処理(イテレーション)によく
-
Pythonで2つのリストが循環的に同一かどうかを判定する方法
この記事では、2つのリストが与えられたとき、それらが循環的に同一(circularly identical)であるかどうかを判定するPythonプログラムを紹介します。循環的に同一とは、片方のリストの要素を回転させたとき、もう片方のリストと完全に一致する状態を指します。 実行例 入力 : A = [100, 100, 10, 10, 100] B = [100, 100, 100, 10, 10] 出力 : True 解説 リストAの要素を順番に循環的に回転させると、リストBと同じ並びになるため、結果は True となります。つまり、開始位置が異なるだけで、要素の並びのパター