Valueerror: Invalid literal for int() with base 10
时间:2020-02-23 14:43:46 来源:igfitidea点击:
在本教程中,我们会看到 Valueerror: Invalid literal for int() with base 10
。
当我们尝试将字符串转换为INT时,我们将看到此错误 int()
功能。
如果我们提供无效字符串输入 int()
功能,我们将收到此错误。
这是滑块更好地理解它。
让我们在举例的帮助下看到这个。
str1 ='theitroad' strInt = int(str1) print(strInt)
输出:
-------------------------------------------------------------------------- ValueError Traceback (most recent call last) <ipython-input-13-787afdfc64da> in <module> 1 str1 ='theitroad' ----> 2 strInt = int(str1) 3 print(strInt) ValueError: invalid literal for int() with base 10: 'theitroad'
显然,你不能转换 'theitroad' 到int类型,因此得到 Valueerror: Invalid literal for int() with base 10
。
让我们看另一个例子。
str1 ='30' strInt = int(str1) print(strInt)
输出:
正如我们所看到的,当我们放置有效的int值时,它会很好。
浮点数
我们可以直接使用 int()
将Float Number转换为INT的功能。
float1 =30.23 int1 = int(str1) print(int1)
如果你试图转换一个 float string
到 int
使用 int()
功能,你会得到 Valueerror: Invalid literal for int() with base 10
。
让我们在举例的帮助下看看。
str1 ='30.23' strInt = int(str1) print(strInt)
输出:
-------------------------------------------------------------------------- ValueError Traceback (most recent call last) <ipython-input-15-24bc2bd52b89> in <module> 1 str1 ='30.23' ----> 2 strInt = int(str1) 3 print(strInt) ValueError: invalid literal for int() with base 10: '30.23'
如果要转换浮动字符串 '30.23' 到int,你需要先使用 float()
功能然后 int()
如下。
str1 ='30.23' strInt = int(float(str1)) print(strInt)
输出:
30
正如我们所看到的,我们能够成功转换 30.23
到int。
使用尝试
我们可以使用 try-except
处理此错误。
让我们在举例的帮助下看到这个。
str1 ='theitroad' try: strInt1 = int(str1) print(strInt1) except: print('Can not convert',str1,"to int")