This question already has answers here:
What's the difference between str.isdigit, isnumeric and isdecimal in python?
(5 个回答)
2年前关闭。
我正在使用 Python 3.6.3,我遇到了来自
我了解这个错误,我知道我可以使用
(5 个回答)
2年前关闭。
我正在使用 Python 3.6.3,我遇到了来自
int()
和 isdigit()
的奇怪行为,代码如下:s = "..... not less than 66²/ 3 % of ......"
total = 0
for c in s:
if c.isdigit():
total += int(c)
ValueError: invalid literal for int() with base 10: '²'
我了解这个错误,我知道我可以使用
try catch
跳过错误。我的问题是,如果 isdigit()
返回 true,则 char\string 应该正确地进行转换,或者 isdigit()
应该返回 false。否则说 int()
和 isdigit()
应该是一致的。 最佳答案
这正是 as documented :
关于python - 类型转换 int 的奇怪行为,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54680187/
10-12 20:27