[解決済み】Pythonでタプル比較はどのように動作するのですか?
質問
を読んでいます。 Pythonのコア プログラミングの本で、著者はこんな例を示しています。
(4, 5) < (3, 5) # Equals false
そこで疑問なのですが、どのように/なぜ false になるのでしょうか?pythonはこの2つのタプルをどのように比較するのでしょうか?
乙、本では説明されていない。
どのように解決するのですか?
タプルは位置ごとに比較されます。 最初のタプルの最初の項目と2番目のタプルの最初の項目が比較され、それらが等しくない場合(つまり、最初の項目が2番目より大きいか小さい)、それが比較の結果となり、さもなければ2番目の項目が検討され、次に3番目と続きます。
参照 一般的な配列の操作 :
同じ型の配列は比較もサポートしています。特に、タプルとリストは、対応する要素を比較することにより、辞書式に比較されます。つまり、等しい比較を行うには、すべての要素を等しく比較しなければならず、2つのシーケンスは同じタイプで同じ長さでなければなりません。
また 数値の比較 をご覧ください。
ビルトイン・コレクション間の字句比較は次のように動作します。
- 2つのコレクションが等しく比較されるためには、それらは同じ型であり、同じ長さであり、対応する要素の各ペアが等しく比較されなければならない(例.
[1,2] == (1,2)
は型が違うので偽です)。- 順序比較をサポートするコレクションは、その最初の不等間隔の要素と同じ順序になります(例.
[1,2,x] <= [1,2,y]
と同じ値を持ちます。x <= y
). 対応する要素が存在しない場合,短い方のコレクションを先に並べる(例.[1,2] < [1,2,3]
が真)。
等しくない場合、配列は最初の異なる要素と同じ順序で並べられます。例えば、cmp([1,2,x], [1,2,y]) は cmp(x,y) と同じものを返します。対応する要素が存在しない場合、短い方の配列が小さいとみなされます(たとえば、[1,2] < [1,2,3]は真を返します)。
注1
:
<
と
>
は、quot;より小さい、quot;より大きいという意味ではなく、quot;より前、quot;より後という意味であるため、(0、1)はquot;より前、(1、0)はquot; となります。
注2 : タプルは n次元空間におけるベクトル 長さによって比較される。
注3 質問 https://stackoverflow.com/questions/36911617/python-2-tuple-comparison タプルは、1つ目の要素が2つ目の要素より大きい場合にのみ、他のタプルよりquot;great"であると考えないでください。
関連
-
[解決済み】TypeError: re.findall()でバイトのようなオブジェクトに文字列パターンを使用することはできません。)
-
[解決済み】 TypeError: += でサポートされていないオペランド型: 'int' および 'list' です。
-
[解決済み】ValueError: xとyは同じサイズでなければならない
-
[解決済み] Pythonには文字列の'contains'サブストリングメソッドがありますか?
-
[解決済み] Pythonで現在時刻を取得する方法
-
[解決済み] mixinとは何か、なぜ有用なのか?
-
[解決済み】if __name__ == "__main__": は何をするのでしょうか?
-
[解決済み】Dockerは仮想マシンとどう違うの?
-
[解決済み】Pythonに三項条件演算子はありますか?
-
[解決済み】2つの辞書を1つの式でマージする(辞書の和をとる)には?)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
PythonはWordの読み書きの変更操作を実装している
-
Pythonによるjieba分割ライブラリ
-
PyQt5はユーザーログインGUIインターフェースとログイン後のジャンプを実装しています。
-
Python LeNetネットワークの説明とpytorchでの実装
-
[解決済み】RuntimeWarning: invalid value encountered in double_scalars で numpy の除算ができない。
-
[解決済み】DataFrameのコンストラクタが正しく呼び出されない!エラー
-
[解決済み】Python regex AttributeError: 'NoneType' オブジェクトに 'group' 属性がない。
-
[解決済み】ilocが「IndexError: single positional indexer is out-of-bounds」を出す。
-
[解決済み】"No JSON object could be decoded "よりも良いエラーメッセージを表示する。
-
[解決済み】LogisticRegression: Pythonでsklearnを使用して、未知のラベルタイプ: '連続'を使用しています。