我在QTableWidget(13列)中显示了1000条记录的数据,刷新4次后得到setItem 52000次,使用pycharm Profile方法,52000次的时间是84ms。 在PySide2发布之后(5月中旬python5.11的Qt),我只从“from PyQt5…”改为“从PyQt5。。。从PySide2导入…“到”。。。导入…“对于我的程序,52000次的时间是3171ms。 我知道PyQt5和PySide2都依赖Qt5,但是性能令人震惊。我想在LGPL中使用PySide2,如何修复它?在
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys
from PySide2.QtWidgets import QApplication, QTableWidgetItem, QMainWindow, QTableWidget
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.setGeometry(200, 300, 960, 540)
self.table = QTableWidget()
self.setCentralWidget(self.table)
self.table.setRowCount(1000)
self.horizontal_header = ["1", "2", "3", "4", "5", "6", "7",
"8", "9", "10", "11", "12", "13"]
self.table.setColumnCount(len(self.horizontal_header))
self.table.setHorizontalHeaderLabels(self.horizontal_header)
for i in range(4):
self._run()
raise NameError
def _run(self):
for row in range(1000):
for column in range(13):
item = QTableWidgetItem('1')
self.table.setItem(row, column, item)
if __name__ == '__main__':
app = QApplication(sys.argv)
mainwindow = MainWindow()
mainwindow.show()
sys.exit(app.exec_())
目前没有回答
相关问题 更多 >
编程相关推荐