广州中医药资源门户网站,虚拟搭建wordpress,沈阳做网站优化的公司,百度站长工具怎么推广网站PyQt5中关于QLineEdit的空输入报错的简单处理 前言分析原因解决办法总结 前言
在PyQt5的界面中对于数据的输入#xff0c;最常用的就是QLineEdit控件#xff0c;该控件作为基本的数据输入控件已经能满足我们的简单使用。在使用过程#xff0c;出现闪退情况#xff0c;发现… PyQt5中关于QLineEdit的空输入报错的简单处理 前言分析原因解决办法总结 前言
在PyQt5的界面中对于数据的输入最常用的就是QLineEdit控件该控件作为基本的数据输入控件已经能满足我们的简单使用。在使用过程出现闪退情况发现问题 ValueError: invalid literal for int() with base 10: 整体程序闪退。发现就是QLineEdit控件不能在转化int的过程中出现空的情况。 分析原因
在使用过程中我们在获取得到QLineEdit控件的输入后需要将其转化为对应的字节然后组包进行传递。在这个过程中有些QLineEdit控件没有输入数据而是以空的形式进行数据传递。实则我们获得空的传递需要转化为0的形式进行下一步的输出。那么就会出现QLineEdit的传递在转化为int的情况下程序报错闪退。
解决办法
最开始查是否可以直接属性设置但是单纯的属性设置是不能满足我们实际需要。也查出可以设置正则表达式或者限制输入来解决问题。 我采用了一种最简单也是最笨的形式就是三目运算暂时解决当下的问题。
par(int(self.n.text() if self.n.text()! else 0).to_bytes(1, byteorderlittle, signedTrue))采用三目运算直接判断是否为如果为则输入为0不为则直接采用其控件输入。 总结
任何程序的报错通过错误提示或者debug调试找出问题源头从源头进行解决