Hier sind einige Titeloptionen, wobei das Frage-Antwort-Format und der Schwerpunkt des Artikels auf der Gruppierung von Datenpaaren in Python zu berücksichtigen sind: Option 1 (Allgemein): * So gruppieren Sie Datenpaare in Python basierend auf S

DDD
Freigeben: 2024-10-27 09:04:30
Original
829 Leute haben es durchsucht

Here are a few title options, keeping in mind the question-answer format and the article's focus on grouping data pairs in Python:

Option 1 (General):

* How to Group Data Pairs in Python Based on Specific Indices?

Option 2 (Specific to the Solution):

Python-Gruppierung nach

Problem:

Gegebene Datenpaare, gruppieren Sie sie basierend auf dem Wert an einem angegebenen Index und konvertieren Sie sie in ein gewünschtes Format.

Lösung:

Um Datenpaare effizient nach ihrem Typ zu gruppieren, befolgen Sie diese Schritte:

Schritt 1: Erstellen Sie ein Wörterbuch

Erstellen Sie ein Wörterbuch mit dem Standarddict aus dem Sammlungsmodul, wobei die Schlüssel die Typen und die Werte Wertelisten sind:

<code class="python">from collections import defaultdict

res = defaultdict(list)
for v, k in input:
    res[k].append(v)</code>
Nach dem Login kopieren

Schritt 2: Wörterbuch in das gewünschte Format konvertieren

Konvertieren Sie das erstellte Wörterbuch in eine Liste von Wörterbüchern mit dem gewünschten Format:

<code class="python">result = [{'type': k, 'items': v} for k,v in res.items()]</code>
Nach dem Login kopieren

Zusätzliche Überlegungen:

  • Um die ursprüngliche Reihenfolge der Schlüssel in Python-Versionen vor 3.7 beizubehalten, verwenden Sie OrderedDict aus dem Collections-Modul.
  • Für Python-Versionen 3.7 und darüber behält ein reguläres Wörterbuch die Einfügereihenfolge bei.

Alternativer Ansatz mit **itertools.groupby()**:

Ein alternativer Ansatz beinhaltet die Verwendung die Funktion itertools.groupby, erfordert jedoch, dass die Eingabedaten sortiert werden.

<code class="python">import operator as itemgetter
import itertools

sorted_input = sorted(input, key=itemgetter(1))
groups = itertools.groupby(sorted_input, key=itemgetter(1))
result = [{'type': k, 'items':[x[0] for x in v]} for k, v in groups]</code>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonHier sind einige Titeloptionen, wobei das Frage-Antwort-Format und der Schwerpunkt des Artikels auf der Gruppierung von Datenpaaren in Python zu berücksichtigen sind: Option 1 (Allgemein): * So gruppieren Sie Datenpaare in Python basierend auf S. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!