赞
踩
- import sys
- from PyQt5.QtWidgets import QApplication, QTableWidgetItem, QTableWidget
-
- app = QApplication(sys.argv)
-
- # tablewidget相关属性设置
- ui_1 = QTableWidget()
- ui_1.setRowCount(3)
- ui_1.setColumnCount(3)
- ui_1.resize(400,400)
- item_1 = QTableWidgetItem("水果")
- ui_1.setItem(1,1,item_1)
-
- # 循环遍历获取单元格内容
- row_count_1 = ui_1.rowCount() # 获取行数
- column_count_1 = ui_1.columnCount() # 获取列数
- print(f"1:\t{row_count_1}") # 打印看一看具体数值是多少
- print(f"2:\t{column_count_1}")
- list_tablewidget_data_1 = []
- for i in range(row_count_1):
- for j in range(column_count_1):
- data_1 = ui_1.item(i,j)
- print(f"3:\t{data_1}")
- list_tablewidget_data_1.append(data_1)
- print(f"4:\t{list_tablewidget_data_1}")
-
- # 判断是否有空白单元格
- if None in list_tablewidget_data_1:
- print("列表中有空白单元格,不可进行读取操作,请补全数据")
- else:
- print("列表中没有空白单元格,可进行读取操作")
- a_1 = 1
- print(f"5:\t{a_1}")
-
- # 优点:if语句没有放在for in循环中
-
- ui_1.show()
-
- sys.exit(app.exec_())
此处代码的优点是:if判断语句放置在for in循环之外,不受循环影响。
注:
1、此处没有用到绘制的ui界面
2、用item获取单元格数据,若有数据,会返回一串代码,如<PyQt5.Qtwidgets......>。若没有数据,则会返回None值。
3、使用.text()函数获取单元格内容前,请先判断一下是否有空白单元格,因为空白单元格对应的None值在.text()函数中无法识别为文本,会报错,程序也会跟着崩溃
写在最后
如果解决了你长久以来的困惑,记得点赞评论收藏哦~
如果解决了你的燃眉之急,荣幸之至,还请记得赞赏哟~
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。