python 数字类型和字符串类型的相互转换,python将字符串类型转换为数字
将python数字字符串转换为数字类型并比较大小。
问题的背景原因错误解决方案1:使用系统自带的转换函数2:使用我的自定义函数。
十六进制字符串转换十进制值类型
问题背景
上班的时候看到了网上的python代码在后面。我们来感受一下这个代码。((为避免商业信息泄露,隐私被删除)))。
如果str1 30 和str1 5000 和str1!=1000:
印刷(succs))。
否则:
打印(失败))))。
给str1一个值并测试它。看看这段神奇的代码有多有效。
请看上面的照片。这是一次公开处决。我输入40000个字符串值。逻辑上30到5000不在1000的范围内。
这是什么在线代码,开发和测试?吓到我了。
错误的原因
Python是一种非常动态的语言类型,它很容易使用,但它还没有那么聪明。所有字符串都按字典顺序进行比较。所以“40000”的第一个字符“4”大于“30”的第一个字符“3”,小于“5000”的第一个字符“5”,不等于“1000”的第一个字符“1”。所以就成立了。
解决办法
首先,使用系统提供的转换功能。
例如int(strparam)函数。
缺点:如果输入的strparam字符串包含字符或特殊字符,会直接出错,无法按要求定制函数。
第二,用我的自定义函数。
优点:没有缺点。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。