Ich versuche, eine Rangliste zu machen. Hier ist eine Liste, ich habe:Sortieren von Strings begleitet von Ganzzahlen in der Liste
list=['rami4\n', 'kev13\n', 'demian6\n']
Ich möchte in der Lage sein, diese Liste zu sortieren von der höchsten Anzahl an kleinsten oder sogar kleinste höchsten, was so etwas wie:
list=['kev13\n', 'demian6\n', 'rami4\n']
Ich habe versucht, Dinge wie re.findall('\d+', list[loop])[0]
zu benutzen, aber ich schaffte es nur, aus der Liste den besten Spieler zu bekommen. Möchten Sie den Code nicht für so viele Spieler wiederholen, wie er existiert? Hat jemand eine Idee?
Dank Delgan, das hat funktioniert. Könnten Sie jedoch etwas mehr über die von Ihnen verwendete Kompilierung() erklären? –
@ArwanCredoz Einige Informationen, [hier] (https://msdn.microsoft.com/library/8zbs0h2f%28v=vs.110%29.aspx). Kurz gesagt, ein Regex ist eine Zeichenfolge, die zuerst in eine Folge von Anweisungen konvertiert wird, die dann auf Ihre Zeichenfolge angewendet werden, damit sie übereinstimmt. Die Kompilierung speichert den ersten Schritt und erhöht die Geschwindigkeit, wenn Sie die gleiche Regex mit mehreren Strings übereinstimmen müssen. In Wirklichkeit spielt das keine Rolle, da Python die berechnete Regex intern zwischenspeichert. Aber ich denke, es ist die beste Vorgehensweise, dies explizit zu tun. – Delgan