.csv文件导入qtableview
时间: 2023-08-12 09:06:37 浏览: 231
你可以按照以下步骤将.csv文件导入QTableView:
1. 创建一个QStandardItemModel对象,用于存储.csv文件中的数据
2. 读取.csv文件中的数据,并将数据存储到QStandardItemModel对象中
3. 创建一个QTableView对象,用于显示数据
4. 将QStandardItemModel对象设置为QTableView对象的model
以下是示例代码:
```python
import csv
from PyQt5.QtCore import Qt
from PyQt5.QtGui import QStandardItemModel, QStandardItem
from PyQt5.QtWidgets import QApplication, QMainWindow, QTableView
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
# 创建一个QStandardItemModel对象
self.model = QStandardItemModel()
# 读取.csv文件中的数据,并将数据存储到QStandardItemModel对象中
with open('data.csv', newline='') as csvfile:
reader = csv.reader(csvfile)
for row in reader:
items = [QStandardItem(field) for field in row]
self.model.appendRow(items)
# 创建一个QTableView对象,用于显示数据
self.table_view = QTableView()
# 将QStandardItemModel对象设置为QTableView对象的model
self.table_view.setModel(self.model)
# 设置表格为自适应大小
self.table_view.horizontalHeader().setSectionResizeMode(QtWidgets.QHeaderView.Stretch)
self.table_view.verticalHeader().setSectionResizeMode(QtWidgets.QHeaderView.Stretch)
# 将QTableView添加到主窗口中
self.setCentralWidget(self.table_view)
if __name__ == '__main__':
app = QApplication([])
window = MainWindow()
window.show()
app.exec_()
```
在上面的示例代码中,我们首先创建了一个QStandardItemModel对象,然后使用csv模块读取.csv文件中的数据,并将数据存储到QStandardItemModel对象中。接着,创建一个QTableView对象,并将QStandardItemModel对象设置为QTableView对象的model,最后将QTableView添加到主窗口中。运行程序后,就可以看到.csv文件中的数据显示在了QTableView中。
阅读全文