当前位置: 首页 > news >正文

PyQt5中关于QLineEdit的空输入报错的简单处理

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, byteorder='little', signed=True))

采用三目运算直接判断是否为'',如果为'',则输入为0,不为'',则直接采用其控件输入。


总结

任何程序的报错,通过错误提示或者debug调试,找出问题源头,从源头进行解决!

http://www.lryc.cn/news/447844.html

相关文章:

  • 【前端】ES12:ES12新特性
  • 语音识别(非实时)
  • 【计算机网络】--URL统一资源定位符
  • 在成都建“圈”五年,鲲鹏让智能化新风吹遍巴蜀大地
  • Unity图形用户界面!*★,°*:.☆( ̄▽ ̄)/$:*.°★* 。(万字解析)
  • 【JAVA报错已解决】Java.lang.NullPointerException
  • JSON 教程
  • HBase 的基本架构 详解
  • crypt.h:No such file or directory报错处理
  • 网络消费维权的9个常见法律问题
  • detectron2是怎么建立模型的?以SparseInst代码为例
  • kafka监控平台Kafdrop:使用记录
  • 的使用和内联函数
  • 征程6 上基于 DEB 工具实现包管理
  • 【git】一文详解: git rebase到底有啥问题
  • 高性能计算应用优化实践之WRF
  • nsight-compute使用教程
  • 【深度学习】03-神经网络01-4 神经网络的pytorch搭建和参数计算
  • 我与Linux的爱恋:命令行参数|环境变量
  • django drf 统一Response格式
  • SM2协同签名算法中随机数K的随机性对算法安全的影响
  • 解决setMouseTracking(true)后还是无法触发mouseMoveEvent的问题
  • 基于深度学习的花卉智能分类识别系统
  • Springboot集成MongoDb快速入门
  • DERT目标检测—End-to-End Object Detection with Transformers
  • 软件后端开发速度慢的科技公司老板有没有思考如何破局
  • 开放原子超级链内核XuperCore可搭建区块链
  • 【Qualcomm】高通SNPE框架的使用 | 原始模型转换为量化的DLC文件 | 在Android的CPU端运行模型
  • C++map与set
  • 随手记:前端一些定位bug的方法