如果你将带小数点的float型的字符串传递给int将会得到错误:
ValueError: invalid literal for int() with base 10
这属于Python类型转换中的一个需要特别注意的地方:切记int()只能转化由纯数字组成的字符串 Python基本数据类型一般分为:数字、字符串、列表、元组、字典、集合这六种基本数据类型。 数字类型包括:整数、浮点数。这两者是可以相互转换的,如下所示:
>>>int(1.0)
>>>float(1)
数字类型也可以与字符类型进行相互转换,如下所示:
>>>#int类型和str类型的互换
>>>int('1')
>>>str('1')
#float类型和str类型的互换
>>>float('1.0')
>>>str('1.0')
但是如果将float型的字符串传递给int函数将会得到错误:
>>>int('1.0')
ValueError: invalid literal for int() with base 10
因为出现了点号,所以不符合规范,切记int()只能转化由纯数字组成的字符串。这个时候先要将字符串1.0转换成float类型再转换成int类型:
>>>int(float('1.0'))