बाहरी पुस्तकालय की कोई आवश्यकता नहीं है। कॉलम नामों के साथ डेटा प्रिंट करता है। यदि आपको कॉलम नामों की आवश्यकता नहीं है, तो 'कॉलम' चर वाली सभी पंक्तियों को समाप्त किया जा सकता है।
sql = "SELECT * FROM someTable"
cursor.execute(sql)
conn.commit()
results = cursor.fetchall()
widths = []
columns = []
tavnit = '|'
separator = '+'
for cd in cursor.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 results:
print(tavnit % row)
print(separator)
यह आउटपुट है:
+--------+---------+---------------+------------+------------+
| ip_log | user_id | type_id | ip_address | time_stamp |
+--------+---------+---------------+------------+------------+
| 227 | 1 | session_login | 10.0.0.2 | 1358760386 |
| 140 | 1 | session_login | 10.0.0.2 | 1358321825 |
| 98 | 1 | session_login | 10.0.0.2 | 1358157588 |
+--------+---------+---------------+------------+------------+
जादू प्रत्येक cursor.description
. के तीसरे कॉलम में निहित है लाइन (cd[2]
called कहा जाता है) कोड में)। यह कॉलम सबसे लंबे मान के वर्णों में लंबाई का प्रतिनिधित्व करता है। इस प्रकार हम प्रदर्शित कॉलम को उसके और कॉलम हेडर की लंबाई के बीच बड़े आकार के रूप में आकार देते हैं (max(cd[2], len(cd[0]))
)।