Pythonで2つのリストを比較する方法

リリース: 2019-07-03 16:50:22
オリジナル
10039 人が閲覧しました

Pythonで2つのリストを比較する方法

cmp() メソッドは、2 つのリストの要素を比較するために使用されます。

cmp() メソッド構文:

cmp(list1, list2)
ログイン後にコピー

パラメーター:

list1 -- 比較するリスト。 list2 – 比較するリスト。

戻り値:

比較する要素が同じ型の場合、値を比較して結果を返します。

2 つの要素が同じ型ではない場合は、それらが数値であるかどうかを確認します。

数値の場合は、必要な数値キャストを実行して比較します。一方の要素が数値の場合は他方の要素が「大きい」(数値が「小さい」)、それ以外の場合は型名のアルファベット順に比較されます。

一方のリストが最初に最後に到達すると、もう一方の長いリストの方が「大きく」なります。

両方のリストの要素を使い尽くし、すべての要素が等しい場合、結果は引き分け、つまり 0 が返されます。

次の例は、cmp() 関数の使用方法を示しています:

#!/usr/bin/python
list1, list2 = [123, 'xyz'], [456, 'abc']
print cmp(list1, list2);
print cmp(list2, list1);
list3 = list2 + [786];
print cmp(list2, list3)
ログイン後にコピー

Python3 は cmp メソッドをサポートしなくなりました:

利用可能なメソッドは次のとおりです:

式減算 (-) メソッド:

print((a>b)-(a<b)) #0,表示俩list相等
ログイン後にコピー

演算子モジュール比較演算:

import  operator
 
a=[1, 2, 3, 4, 5 ]
b=[1, 2, 3, 4, 5,6 ]
c=[1, 2, 3, 4, 5 ]
print(operator.lt(a,b)) #=> True ,小于<
print(operator.gt(a,b)) #=> False ,大于>
print(operator.eq(a,c)) #=> True ,等于==
print(operator.ne(b,a)) #=> True ,不等于!=
print(operator.le(a,b)) #=> True ,小于等于<=
print(operator.ge(b,a)) #=> True ,大于等于>=
ログイン後にコピー

Python 関連の技術記事の詳細については、Python チュートリアルをご覧ください。 学びのコラム!

以上がPythonで2つのリストを比較する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート