from PyQt5 import QtWidgets, QtGui import sys class Table(QtWidgets.QMainWindow): def __init__(self): super().__init__() self.initUI() def initUI(self): # Create a table widget self.tableWidget = QtWidgets.QTableWidget(self) self.tableWidget.setGeometry(QtCore.QRect(0, 0, 600, 400)) self.tableWidget.setColumnCount(3) self.tableWidget.setRowCount(3) # Set the Table Headers self.tableWidget.setHorizontalHeaderLabels(['First Name', 'Last Name', 'Age']) self.tableWidget.setVerticalHeaderLabels(['', '', '']) # Add data to the table self.tableWidget.setItem(0, 0, QtWidgets.QTableWidgetItem('John')) self.tableWidget.setItem(0, 1, QtWidgets.QTableWidgetItem('Doe')) self.tableWidget.setItem(0, 2, QtWidgets.QTableWidgetItem(str(25))) # Show the table self.show() if __name__ == '__main__': app = QtWidgets.QApplication(sys.argv) ex = Table() sys.exit(app.exec_())
# Assume we already have a table widget # tableWidget.setItem(row, col, QTableWidgetItem(string)) # set cell value cell = tableWidget.item(row, col) if cell is not None: print(cell.text())Both of these examples use the PyQt5.QtWidgets package library to create and manipulate table widgets. By using the QTableWidgetItem class, the developer is able to display and edit data in the table, as well as retrieve data from a specified cell.