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

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.kler.cn/a/323469.html

相关文章:

  • 【redis】—— 环境搭建教程
  • H3C NX30Pro刷机教程-2024-11-16
  • Electron 沙盒模式与预加载脚本:保障桌面应用安全的关键机制
  • 【ict基础软件赛道】真题-50%openGauss
  • 树状数组+概率论,ABC380G - Another Shuffle Window
  • 新手教学系列——善用 VSCode 工作区,让开发更高效
  • 华为云发布全栈可观测平台AOM,以AI赋能应用运维可观测
  • Apache Cordova/PhoneGap
  • ConstructorParameters
  • 基于elasticsearch存储船舶历史轨迹
  • 基于SpringBoot+Vue的大学生勤工助学兼职管理系统
  • 2024最新【PyCharm】史上最全PyCharm安装教程,图文教程(超详细)
  • harmonyOS ArkTS最新跳转Navigation
  • 解决编译问题:undefined reference to `__aeabi_uidivmod‘
  • 20240924 行列式为1的矩阵不一定是正交矩阵
  • 昇思MindSpore进阶教程--数据处理管道支持Python对象
  • 基于Hive和Hadoop的用电量分析系统
  • 三节课发布首张AIGC学习地图,全员学习AI真的必要吗?
  • Java Web —— 第十天(SpringBoot原理)
  • ML 系列:机器学习和深度学习的深层次总结(06)— 提升数据质量
  • 数通。。。
  • uniapp js向json中增加另一个json的全部数据,并获取json长度
  • 【分布式微服务云原生】Dockerfile命令详解
  • 一站式家装服务管理系统
  • day01——通过git进行管理项目
  • HarmonyOS鸿蒙系统开发应用程序,免费开源DevEco Studio开发工具