2016-05-12 3 views
0

Derzeit sind alle meine Ergebnisse als eine lange Linie angezeigt wird, ist es eine Möglichkeit, die Ergebnisse so sieht wie folgt aus zu trennen:Wie zeige ich meine 'findall' Ergebnisse in einer separaten Zeile an?

  • „Suchergebnis 1“
  • „Suchergebnis 2“
  • „Ergebnis 3"
  • "4"

usw.

hier ist der Code, den ich habe:

Label(new_window, text = findall('<strong>(.*)</strong>', html_code)).pack() 
+0

'" \ n ".join (findall ('(. *)', html_code))'? Sie sollten auch wirklich einen HTML-Parser wie beautifulsoup oder lxml verwenden –

Antwort

1

Ich denke, Ihre Regex sollte eigentlich (.*?) sein? Während wir über das Thema von regulären Ausdrücken sind ....

Sie sollten nicht reguläre Ausdrücke verwenden, um html zu analysieren. Sie sollten einen HTML-Parser verwenden.

Aber, um Ihre Frage zu beantworten, wenn Sie nur ein Label Widget

"\n".join(findall('<strong>(.*?)</strong>', html_code)) 

Andernfalls könnten Sie einfach eine forloop verwenden, um ein neues Label für jedes Widget erstellen, mit dem Ergebnis in findall als Text und Raster wollen/Pack jede auf dem Raster nach dem gewünschten Layout.

+0

danke, es funktioniert und danke für den Rat. – Kaito

Verwandte Themen