In einer Liste bestimmte Stringelemente entfernen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
0x68646d
User
Beiträge: 2
Registriert: Samstag 13. August 2016, 16:10

Hallo,
bin relativ neu in Python und will jetzt Informationen aus einem Array gewinnen.
Das Array ist folgendermaßen aufgebaut:
  • var pages = [["info-die-ich-brauch"
    ["müll"
    ["müll"
    ["info-die-ich-brauch"
    ...
[/list]
(das schema geht noch 100 einträge weiter)

Wie kann ich nun am gechicktesten aus so einer Liste ohne anführungszeichen usw. den Müll, den ich nicht brauch rausfiltern.
Also ich könnte an sich die ganzen Sachen, die ich brauche rausfiltern, jedoch umständllich mit diesem Code:

Code: Alles auswählen

for i in range(len(x), 1, -3):
		del x[i]
		del x[i-1]
	for i in range(0, len(x)):
		x[i].replace("var pages", "")
		x[i].replace(" ", "")
		x[i].replace("[", "")
		x[i].replace("]", "")
		x[i].replace("\"", "")
Nun meine Frage ist wie so was geschickter geht, weil der Code den ich produziert habe ziemlich schwachsinnig aussieht :D
nezzcarth
User
Beiträge: 1792
Registriert: Samstag 16. April 2011, 12:47

Was du da hast, sieht für mich sehr merkwürdig aus (geöffnete Klammern ohne Gegenstück, BBCode ähnlicher Tag..). Liegt das wirklich so als String vor? Ist das aus irgendeiner Config-Datei, oder sowas?
0x68646d
User
Beiträge: 2
Registriert: Samstag 13. August 2016, 16:10

Sorry bei der Darstellung der Liste ist mir ein Fehler unterlaufen.

var pages = [["info-die-ich-brauch"
"müll"
"müll"]
["info-die-ich-brauch"
...


Das ist aus einem JS Code, den ich mit urllib rausgefischt habe.
nezzcarth
User
Beiträge: 1792
Registriert: Samstag 16. April 2011, 12:47

0x68646d hat geschrieben: Das ist aus einem JS Code, den ich mit urllib rausgefischt habe.
Kann es sein, dass da noch Kommata und schließende Klammern fehlen?

Dann wäre es -- mit Ausnahme der Zuweisung am Anfang -- valides JSON und du könntest das mit dem JSON-Parser aus der Standardbibliothek verarbeiten. Sobald das geparst ist, kannst du dann mit einer List-Comprehension die Elemente wählen, die deinen Kriterien folgen.

Code: Alles auswählen

[
    [
        "info-die-ich-brauch",
        "müll",
        "müll"
    ],
    [
        "info-die-ich-brauch"
    ]
]
Antworten