Heim  >  Artikel  >  Backend-Entwicklung  >  Analyse des Vergleichsprinzips der in Python integrierten Vergleichsfunktion cmp

Analyse des Vergleichsprinzips der in Python integrierten Vergleichsfunktion cmp

高洛峰
高洛峰Original
2016-11-23 13:20:261269Durchsuche

Vergleichsprinzip der cmp-Vergleichsfunktion von Python

cmp(x, y): Wenn das erstere kleiner als das letztere ist, wird -1 zurückgegeben, wenn sie gleich sind, wird 0 zurückgegeben. und wenn es größer als letzteres ist, wird 1 zurückgegeben.

Vergleichsprinzip der cmp-Vergleichsfunktion von Python

Pythons cmp-Funktion kann Vergleiche zwischen demselben Typ oder zwischen verschiedenen Datentypen durchführen. Bestimmen Sie dann die Vergleichsgröße basierend auf dem Rückgabewert der cmp-Vergleichsfunktion von Python.
>>> list1, list2 = [123, 'xyz'], [456, 'abc']
>>> cmp(list1, list2)
-1
>>> cmp(list2, list1)
1
>>> list3 = list2 [789]
>>> ', 789]
>>> cmp(list2, list3)
-1

Wenn wir mehrere Vergleiche der cmp-Funktion oben betrachten, können wir Folgendes zusammenfassen:

Python cmp-Vergleichsfunktion: Wenn wir zwei Objekte desselben Typs vergleichen, ist der Vergleichsvorgang sehr intuitiv.

Vergleich von Zahlen und Zeichenfolgen, direkter Vergleich ihrer Werte.



Zum Vergleich von Sequenztypen sind die Methoden ähnlich. Python versucht, faire Ergebnisse zu erzielen, wenn zwei Objekte grundsätzlich nicht vergleichbar sind. Wenn beispielsweise zwei Objekte keine Beziehung haben oder wenn die beiden Typen überhaupt keine Vergleichsfunktion haben, kann Python nur Schlussfolgerungen auf der Grundlage von „Logik“ ziehen. Vergleichsalgorithmus:

1. Vergleichen Sie die Elemente zweier Listen.

2. Wenn die verglichenen Elemente vom gleichen Typ sind, vergleichen Sie ihre Werte und geben Sie das Ergebnis zurück.

3. Wenn die beiden Elemente nicht vom gleichen Typ sind, prüfen Sie, ob es sich um Zahlen handelt.

> b. Wenn das Element auf der einen Seite eine Zahl ist, dann ist das Element auf der anderen Seite „groß“ (die Zahl ist das „kleinste“).

Andernfalls vergleichen Sie in alphabetischer Reihenfolge des Typs Name.

4. Wenn eine Liste zuerst das Ende erreicht, ist die andere, längere Liste „größer“.

5. Wenn wir die Elemente beider Listen erschöpfen und alle Elemente gleich sind, dann ist das Ergebnis ein Unentschieden, nur

bedeutet, dass eine 0 zurückgegeben wird.

Dies ist das Vergleichsprinzip der cmp-Funktion von Python

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Python-IDENächster Artikel:Python-IDE