Làm thế nào để bạn hiển thị dữ liệu dạng bảng trong python?
Trước khi chúng ta bắt đầu. Hướng dẫn Python này là một phần trong loạt bài hướng dẫn Gói Python của chúng tôi. Bạn cũng có thể tìm các chủ đề khác liên quan đến Tkinter Show Nếu ứng dụng Python của bạn hoạt động với dữ liệu, bạn có thể muốn hiển thị nó trong giao diện người dùng của mình. Phương pháp tiêu chuẩn để hiển thị dữ liệu trong các ứng dụng GUI là ở định dạng bảng (dạng bảng), bao gồm các hàng và cột giống như một bảng tính. Thật không may, Tkinter không cung cấp tiện ích để tạo bảng May mắn thay, có các phương pháp thay thế để tạo bảng hiển thị dữ liệu trong Tkinter. Ví dụ: tiện ích Mục nhập có thể được mã hóa để hiển thị dữ liệu trong một bảng và cũng có các gói bảng có thể được tải xuống từ Chỉ mục gói Python (PyPI) và cài đặt Sau khi bạn quyết định một phương pháp, bảng Tkinter có thể được sử dụng làm giao diện cho một hoặc nhiều bảng có liên quan có trong cơ sở dữ liệu để lưu trữ lâu dài hoặc vĩnh viễn Cách hiển thị dữ liệu trong bảng tiện ích nhập TkinterXem bản demo trong video này hoặc tiếp tục cuộn để nhận hướng dẫn và đoạn mã Tiện ích Mục nhập thường được sử dụng để nhập hoặc hiển thị một chuỗi văn bản, nhưng tiện ích này cũng có thể được sử dụng cùng với phạm vi() function and for loop to display values in a table of multiple rows and columns. Trong ví dụ này, hàm range() tạo danh sách các số được điền vào bảng tiện ích Mục nhập gồm 5 hàng và 4 . from tkinter import * rows = [] for i in range(5): cols = [] for j in range(4): e = Entry(relief=GROOVE) e.grid(row=i, column=j, sticky=NSEW) e.insert(END, '%d.%d' % (i, j)) cols.append(e) rows.append(cols) mainloop() Cách hiển thị dữ liệu trong bảng tiện ích Tkinter TksheetTksheet là gói bên thứ ba có sẵn trong PyPI. Nó cung cấp một tiện ích bảng Tkinter với nhiều tùy chọn, bao gồm menu bật lên (nhấp chuột phải) cho phép bạn thêm và xóa hàng, chỉnh sửa dữ liệu trong ô và hoàn tác các thay đổi. Tọa độ hàng và cột (x. y) được hiển thị trong mỗi ô theo mặc định và có thể được thay thế bằng dữ liệu khác. Gói Tksheet có thể được cài đặt trong một thiết bị đầu cuối hoặc dòng lệnh, bằng cách nhập pip install tksheet Trong ví dụ này, hàm range() tạo danh sách các số dựa trên công thức lưới của hàng {ri} and column {cj} coordinates, and then populates the values in a table consisting of 1 row and 4 columns: import tkinter as tk import tksheet top = tk.Tk() sheet = tksheet.Sheet(top) sheet.grid() sheet.set_sheet_data([[f"{ri+cj}" for cj in range(4)] for ri in range(1)]) # table enable choices listed below: sheet.enable_bindings(("single_select", "row_select", "column_width_resize", "arrowkeys", "right_click_popup_menu", "rc_select", "rc_insert_row", "rc_delete_row", "copy", "cut", "paste", "delete", "undo", "edit_cell")) top.mainloop() Cách hiển thị dữ liệu SQLite trong bảng TkinterBảng Tkinter có thể đóng vai trò là giao diện cho dữ liệu nằm trong bộ lưu trữ vĩnh viễn, chẳng hạn như cơ sở dữ liệu SQLite. Trong trường hợp này, một câu lệnh SQL thường được sử dụng để chọn tất cả hoặc một số dữ liệu trong một hoặc nhiều bảng cơ sở dữ liệu để hiển thị trong bảng. Ví dụ # Một câu lệnh SQL chọn tất cả dữ liệu từ một bảng SELECT * from Lưu ý rằng dữ liệu được hiển thị trong bảng Tkinter không cố định, nhưng câu lệnh truy vấn được lưu tự động vào cơ sở dữ liệu để sử dụng trong tương lai Trong ví dụ này, bảng Tkinter được sử dụng làm giao diện để hiển thị dữ liệu trong bảng cơ sở dữ liệu SQLite from tkinter import ttk import tkinter as tk import sqlite3 def connect(): con1 = sqlite3.connect(" Cách hiển thị dữ liệu Pandas và Numpy trong bảng TkinterTrong ví dụ này, cấu trúc dữ liệu Pandas và Numpy được hiển thị trong bảng Tkinter import pandas as pd import numpy as np import sys from tkinter import * root = Tk() root.geometry('580x250') dates = pd.date_range('20210101', periods=8) dframe = pd.DataFrame(np.random.randn(8,4),index=dates,columns=list('ABCD')) txt = Text(root) txt.pack() class PrintToTXT(object): def write(self, s): txt.insert(END, s) sys.stdout = PrintToTXT() print ('Pandas date range of 8 values in 1 timestamp column adjacent to a numpy random float array of 8 rows and 4 columns, displayed in a Tkinter table') print (dframe) mainloop() Bước tiếp theoBây giờ bạn đã biết cách sử dụng trình quản lý bố cục Pack() của Tkinter, hãy chuyển sang những thứ khác mà bạn có thể làm với Tkinter
Nhận phiên bản Python được biên dịch sẵn cho Khoa học dữ liệuMặc dù bản phân phối mã nguồn mở của Python có thể phù hợp với một cá nhân, nhưng nó không phải lúc nào cũng đáp ứng các yêu cầu về hỗ trợ, bảo mật hoặc nền tảng của các tổ chức lớn Đây là lý do tại sao các tổ chức chọn ActivePython cho nhu cầu khoa học dữ liệu, xử lý dữ liệu lớn và phân tích thống kê của họ Được đóng gói sẵn với các gói quan trọng nhất mà Nhà khoa học dữ liệu cần, ActivePython được biên dịch sẵn để bạn và nhóm của bạn không phải lãng phí thời gian để định cấu hình bản phân phối nguồn mở. Bạn có thể tập trung vào những gì quan trọng – dành nhiều thời gian hơn để xây dựng các thuật toán và mô hình dự đoán đối với các nguồn dữ liệu lớn của bạn và ít thời gian hơn cho cấu hình hệ thống |