Py学习  »  Python

python:是否有任何内置函数只将字符串类型转换为无符号整数,如果字符串是有符号整数,则抛出错误

Karthik J • 7 年前 • 2341 次点击  

考虑python 3.x中的这个例子:

strX = "-5"
print (int(strX))

以上程序返回 - 5

问题: 是否有类似于“int()”的内置函数,如果要转换字符串,则返回错误消息(在上面的示例中 “斯特拉克” )是负数吗?

我正在寻找一些内置函数,如“unsigned_int()”,该函数只应在传递的字符串为零或大于数字时继续,否则在传递负数时返回错误。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/43685
文章 [ 2 ]  |  最新文章 7 年前
Arnav Poddar
Reply   •   1 楼
Arnav Poddar    7 年前

我不认为有一个一行程序或内置函数用于特定目的,但一个简单的if语句应该可以工作。

strX = "-5"
strX = int(strX)
if strX >= 0 or strX >= -0:
  print (strX)
else:
  print ("Not a non-negative value.")

您的例子是用Python 2.7语法编写的,但由于我不太满意,所以我在Python 3中重写了它。X. Sorry给您带来了不便。

FrenchMasterSword
Reply   •   2 楼
FrenchMasterSword    7 年前

没有什么内置的,python只识别“int”类型。你可以检查是否有 '-' 在实际数字之前,如果是,使用 % 要确定其计数是偶数还是奇数,请确定其应为正还是负。

不要忘记0和-0都应该是正的。