Ich habe diese Art von Liste der Liste (nur zwei verschachtelte Ebene):löschen Elemente aus der Liste der Liste: pythonic Weg
my_list = [['A'], ['B'], ['C','D','A','B'], ['E'], ['B', 'F', 'G'], ['H']]
ich eine Liste der Elemente habe in my_list
zu löschen:
to_del = ['A','B']
das ist meine Vorstellung von Code to_del
Elemente aus my_list
zu löschen:
for i in my_list:
for d in to_del:
if d in i:
i.remove(d)
Ausgang: [[], [], ['C', 'D'], ['E'], ['F', 'G'], ['H']]
meine Fragen hier:
- Können Sie sich eine pythonic/elegante Art und Weise legen nahe, die gleichen
- Können Sie eine intelligente Art und Weise zu tun, um die Anzahl der verschachtelten zu verallgemeinern Ebenen zB
my_list = [ ['A'], ['B'], ['C', ['D', 'E', ['F']], 'G'], ['H'] ]
- Die ideale Methode hat ein boolesches Argument
empty_lists
, um zu entscheiden, ob Sie leere Listen behalten oder nicht.
Möchten Sie die leeren Listen behalten? – fafl
Sie haben das bemerkt. Nun, die ideale Methode hat ein boolesches Argument 'empty_lists', um zu entscheiden, ob die leeren Listen beibehalten werden sollen. – enneppi
Willkommen bei [so]. Wir haben eine Bearbeitungshistorie für diejenigen, die wirklich daran interessiert sind, wie sich der Beitrag im Laufe der Zeit entwickelt hat, so dass es nicht nötig ist, "EDIT:" einzugeben. Sie sollten immer neue Informationen integrieren, um einen einzigen kohärenten Beitrag zu erstellen, anstatt Informationen lückenlos zu markieren und den Beitrag schwieriger zu lesen als nötig. Und wenn Sie wirklich auf etwas aufmerksam machen müssen, SCHREIEN SIE NICHT, sondern verwenden Sie ** fett ** oder * kursiv *. – Anthon