Die Sortierung nach absoluten Wert ohne änderung zu absoluten Wert

Möchte ich Sortieren eines Tupels mit Hilfe der abs (), ohne tatsächlich ändert die Elemente der Tupel zu positiven Werten.

def sorting(numbers_array):
    return sorted(numbers_array, key = abs(numbers_array))


sorting((-20, -5, 10, 15))

Gemäß der python-wiki (https://wiki.python.org/moin/HowTo/Sorting/#Key_Functions), die sortiert(Liste, key=) - Funktion wird angenommen, sortiert mit dem parameter Schlüssel, ohne tatsächlich eine änderung der Elemente der Liste. Allerdings, abs() nimmt nur int ( ... ) und ich habe noch nicht herausgefunden, einen Weg, um das Tupel in ein int, wenn es das ist, was ich tun muss.

  • Warten Sie, Sie versuchen, Sie zu Sortieren ein Tupel, keine Liste hier. Ist das so gewollt?
  • sorted((-20, -5, 10, 15), key=lambda v: -v if v<0 else v) ist eine Alternative, um die richtigen sorted((-20, -5, 10, 15), key=abs)
InformationsquelleAutor Nick Kremer | 2015-01-12
Schreibe einen Kommentar