簡體   English   中英

如何在 Python 中使用 GUI Tkinter 以特定格式顯示來自數據庫 sqlite3 的信息?

[英]How to display information from database sqlite3 using GUI Tkinter in Python in a specific format?

我正在嘗試從數據庫中檢索信息並以某種方式顯示它:

名稱:蝙蝠俠

價格:18 英鎊

但我收到此錯誤:“TypeError:'int' object 不可下標。”

我該如何解決?

c.execute("SELECT name, price FROM products WHERE id=02")
    records = c.fetchone()
    # print(records)

    print_products = ''
    for record in records:
        print_products += 'Name:' + str(record[0]) + '\n' + 'Price: £' + str(record[1])

    query_label = Label(frame, fg='darkblue', bg='darkgray', text=print_products)
    query_label.pack()

由於您只從結果中獲取一條記錄,因此records是列值的元組。 然后你使用for record in records: ,這意味着record是一個列值,可能是 integer。 所以使用record[0]會引發上述異常。

實際上你根本不需要 for 循環:

c.execute("SELECT name, price FROM products WHERE id=02")
record = c.fetchone()

# check whether record exists
if record:
    print_products = 'Name:' + str(record[0]) + '\n' + 'Price: £' + str(record[1])

    query_label = Label(frame, fg='darkblue', bg='darkgray', text=print_products)
    query_label.pack()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM