Ich versuche, hier eine Verknüpfung von einigen Listen in einer Liste in Python zu machen, ist ein Beispiel dafür, was ich tue (die Listen viel größer in der realen Code sind):Listen in einer Liste zusammenfügen?
import itertools
listenv = ["IN","VC","VS"]
listsize = ["U17-1","U17-2"]
listevnsize = list(itertools.product(listenv, listsize,))
print listevnsize
#This results in [('IN', 'U17-1'), ('IN', 'U17-2'), ('VC', 'U17-1'), ('VC', 'U17-2'), ('VS', 'U17-1'), ('VS', 'U17-2')]
Was ich tun möchte, jetzt ist die inneren Listen mit einem kombinieren - zum Beispiel würde ich mit dem Ergebnis zufrieden sein:
[('IN-U17-1'), ('IN-U17-2'), ('VC-U17-1'), ('VC-U17-2'), ('VS-U17-1'), ('VS-U17-2')]
Also mit anderen Worten mag ich die inneren Listen verbinden, aber wenn ich versuchte, mit:
listevnsizejoined = '-'.join(map(str,listevnsizezip))
Wie in einer anderen Frage vorgeschlagen, dies wird alle äußeren Listen in eine große Zeichenfolge wie folgt verbinden:
(('IN', 'U17-1'),)-(('IN', 'U17-2'),)-(('VC', 'U17-1'),)-(('VC', 'U17-2'),)-(('VS', 'U17-1'),)
ENDLÖSUNG:
import itertools
listenv = ["IN","VC","VS","VX","RH","HT","DP","AD","PT","PTRH","WP","WPRH","CYVX","HM"];
listsize = ["U17-1","U17-2"];
listseventeenGR = ["17P:3","17P:4","17P:5.5","17P:7","17P:10","17P:16","17P:22","17P:28","17P:40","17P:49","17P:55","17P:70","17P:100"]
listevnsize = list(itertools.product(listenv, listsize,))
listenvsizejoined = []
for x in listevnsize:
listenvsizejoined.append('-'.join(i for i in x))
print listenvsizejoined
Dies ist die endgültige Lösung für die Kombination von zwei Listen in alle Kombinationen und dann diese inneren Listen mit einem Bindestrich verbinden. nur
Bearbeitet, um die Ausgabe des Hinweises aus anderen Postings hinzuzufügen. Ich wollte meinen Code vollständig anzeigen und wieso mein Join-Befehl nicht wie gewünscht funktioniert, vielleicht habe ich ihn falsch benutzt. –