2017-05-27 6 views
0

Hallo im Versuch, eine CSV-Datei zu lesen und bestimmte Daten in HTML-Tabelle und erstellen Sie eine HTML-Seite, die diese Tabelle enthält. Meine CSV-Datei hat etwa 110 Zeilen und fünf Spalten als "Opposition", "Winner", "Margin", "Ground" und "Year". Spalte "Jahr" enthält sechs Ebenen wie 2012, 2013, 2014, 2015, 2016, 2017. Ich versuche, die Daten zu extrahieren, in denen "Jahr = 2012" und erstellen Sie eine HTML-Seite mit einer HTML-Tabelle, die meine extrahierten Daten enthält. meine CSV-Datei ist wie;erstellen Sie HTML-Seiten mit Python

Ich brauche die Zeilen, die 2012 als Jahr haben, innerhalb meiner "2012.html" Seite als Tabelle. Bisher meine Codes sind:

infile = open("new.csv", "r") 
data = [] 
for line in infile: 
    cols = line.split(",") 
    Oposition = cols[0] 
    Winner = cols[1] 
    Margin = cols[2] 
    Ground = cols[3] 
    Year = cols[4] 
    pair = (Oposition, Winner, Margin, Ground, Year) 
    data.append(pair) 
infile.close() 

out1 = open("2012.html", "w") 
out1.write("""<!DOCTYPE html> 
    <html> 
    <head> 
    </head> 
    <body> 
""") 
for r in data: 
    if r["Year"] == "2012": 
     Oposition = r["Oposition"] 
     Winner = r["Winner"] 
     Margin = r["Margin"] 
     Year = r["Year"] 
     out1.write(" <p>" + c + " " + str(p) + "</p>\n") 
out1.write(" </body>\n") 
out1.write("</html>\n") 
out1.close() 

jemand mir helfen, aus. Sehr geschätzt. innerhalb der HTML-Seite 2012 brauche ich eine Tabelle wie; sample table

Und ein Kreisdiagramm für Sieger Spalt

+1

Was ist die Frage genau? – JazZ

+0

Geben Sie uns eine kurze Probe von new.csv – Ahmad

+0

im Versuch, eine HTML-Webseite namens "2012.html" zu erstellen und erstellen Sie eine Tabelle innerhalb dieser Seite, die die Daten enthält, die "Jahr = 2012". – Dush

Antwort

0

Ich nehme an, Sie Schwierigkeiten haben, in immer Jahr = „2012“ enrtries und Erstellen von HTML-Tabelle python.Hopefully Code unten verwenden könnte Ihr Problem lösen.

infile = open("new.csv", "r") 
data = [] 
for line in infile: 
    cols = line.split(",") 
    Oposition = cols[0] 
    Winner = cols[1] 
    Margin = cols[2] 
    Ground = cols[3] 
    Year = cols[4] 
    pair = (Oposition, Winner, Margin, Ground, Year) 
    data.append(pair) 
infile.close() 

out1 = open("2012.html", "w") 
out1.write("""<!DOCTYPE html> 
    <html> 
    <head> 
    </head> 
    <body> 
    <table border="1"><tr><th>Oposition</th><th>Winner</th><th>Margin</th><th>Ground</th><th>Year</th></tr> 

""") 
for r in data: 
    if ''.join(r[4].split()) == "2012": 
     Oposition = r[0] 
     Winner = r[1] 
     Margin = r[2] 
     Ground=r[3] 
     Year = r[4] 
     out1.write("<tr> <td>" + Oposition+ '</td><td> '+ Winner+'</td><td> '+Margin+'</td><td> '+Ground+' </td><td>'+ Year+ " </td></tr>") 

out1.write("</table> </body>\n") 
out1.write("</html>\n") 
out1.close() 

Wie Sie Werte von (Oposition, Winner, Margin, Ground, Year) Variablen in Liste anhängt r .Accessing r["Year"] == "2012" werden Fehler wie r führen Sie eine Liste, und wir können die Werte mit Index und keine Namen bekommen.

+0

ja es funktioniert :) – Dush

+0

Froh, dass es funktioniert :) –

+0

Hallo auf der gleichen Seite Ich habe versucht, ein Kreisdiagramm, das die Gewinner-Teams zeigt mit der Spalte "Winner". Konnte einfach nicht herausfinden. irgendeine Hilfe? – Dush

Verwandte Themen