Ich versuche, meine Datenbanktabelle Daten auszugeben, die neben langen Tabellenzeilen funktioniert. Die Spalten müssen so groß wie die längste Datenbankzeile sein. Ich habe Probleme beim Implementieren einer Berechnung, um die Tabelle proportional anstelle einer riesigen Unordnung auszugeben, wenn lange Zeilen ausgegeben werden (ohne eine Drittanbieterbibliothek zu verwenden, z. B. Print results in MySQL format with Python). Bitte lassen Sie mich wissen, wenn Sie weitere Informationen benötigen.Python-Ausgabe Länge
Datenbankverbindung:
connection = sqlite3.connect("test_.db")
c = connection.cursor()
c.execute("SELECT * FROM MyTable")
results = c.fetchall()
formatResults(results)
Tabellenformatierung:
def formatResults(x):
try:
widths = []
columns = []
tavnit = '|'
separator = '+'
for cd in c.description:
widths.append(max(cd[2], len(cd[0])))
columns.append(cd[0])
for w in widths:
tavnit += " %-"+"%ss |" % (w,)
separator += '-'*w + '--+'
print(separator)
print(tavnit % tuple(columns))
print(separator)
for row in x:
print(tavnit % row)
print(separator)
print ""
except:
showMainMenu()
pass
Output Problem Beispiel:
+------+------+---------+
| Date | Name | LinkOrFile |
+------+------+---------+
| 03-17-2016 | hi.com | Locky |
| 03-18-2016 | thisisitsqq.com | None |
| 03-19-2016 | http://ohiyoungbuyff.com\69.exe?1 | None |
| 03-20-2016 | http://thisisitsqq..com\69.exe?1 | None |
| 03-21-2016 | %Temp%\zgHRNzy\69.exe | None |
| 03-22-2016 | | None |
| 03-23-2016 | E52219D0DA33FDD856B2433D79D71AD6 | Downloader |
| 03-24-2016 | microsoft.com | None |
| 03-25-2016 | 89.248.166.132 | None |
| 03-26-2016 | http://89.248.166.131/55KB5js9dwPtx4= | None |
Was genau ist das Problem, vor dem Sie stehen? – trans1st0r
Siehe Bearbeiten oben. – user5792975
Haben Sie die Ausgabe der variablen Breiten gedruckt? Enthält es die Länge des längsten Werts pro Spalte? – trans1st0r