Erstellen einer Liste sublist Tupeln und Liste mit Anfangs- und Endglieder von sublist als Tupel enthält,

stimmen
-1

Ich habe eine Liste zum Beispiel wie folgt aus

[(1.0, 1.5), [2, 2], (1.5, 1.0), (1.1428571343421936, 0.28571426868438721), [1, 0], (0.5, 0.0), (0.66666668653488159, 0.0), [0, 0], [0, 1], (0.5, 1.25)]

Ich möchte Teil-Listen erstellen, indem Tupelelemente als erste und letzte Element der Unterliste angehängt, so etwas wie folgt aus:

[[(1.0, 1.5), [2, 2], (1.5, 1.0)],[(1.1428571343421936,
0.28571426868438721), [1, 0], (0.5, 0.0)],[(0.66666668653488159, 0.0), [0, 0], [0, 1], (0.5, 1.25)]]

Ich habe versucht, den folgenden Code verwenden, aber es scheint nicht zu funktionieren, weil ich nicht in der Lage bin, um herauszufinden, wie Tupel in der Art und Weise zu wählen, in dem ich will. Auch gibt es Indexfehler.

full_list = []
for ind,value in enumerate(flat_list):
    if isinstance(value,(tuple)):
        a = []
        a.append(value)
        temp = 0
        while(temp!=1):
            ind = ind + 1
            j = flat_list[ind]
            a.append(j)
            if type(j) == 'tuple':
                temp = 1
            break
        full_list.append(a)
    else:
        continue

print(full_list)

Bitte machen einige Vorschläge !!

Veröffentlicht am 20/10/2018 um 12:27
quelle vom benutzer
In anderen Sprachen...                            


1 antworten

stimmen
1

breakals letzte Anweisung eines while-loop kann durch ersetzt werden if.

full_list = []
state = 0
for value in flat_list:
    if isinstance(value, tuple):
        if state == 0:
            state = 1
            inner_list = []
            full_list.append(inner_list)
        else:
            state = 0
    inner_list.append(value)

print(full_list)
Beantwortet am 20/10/2018 um 12:35
quelle vom benutzer

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more