温馨提示:本文共1025个字,读完预计3分钟。
负责转换数据类型的函数一共有3种:str()、 int()和float()。
下面,我们先来学习一下str()函数,它拥有镜像世界的『隐分身术』,可让其他类型的数据分身成str类型。
-
str()函数
str()函数能将数据转换成其字符串类型,不管这个数据是中文、数字、标点还是火星文,只要放到括号里。这个数据就能摇身一变,成为字符串类型。
#例如,将整型number转换为字符串型 number = 3 str(number)
-
int()函数
将数据转换为整数类型的方法也很简单,就是int()函数。其使用方法同str()一样,将你需要转换的内容放在括号里就行,像这样:int(转换的内容)。
不过对于int()函数的使用,大家要注意一点:只有符合整数规范的字符串类数据,才能被int()强制转换。
别看它虽然只有一句话,但它其实带有三层含义:首先,整数形式的字符串比如’6’和’1’,可以被int()函数强制转换。
其次,文字形式,比如中文、火星文或者标点符号,不可以被int()函数强制转换。
最后,小数形式的字符串,由于Python的语法规则,也不能使用int()函数强制转换。
比方说下列代码,如果点击运行,程序会报错【ValueError:invalid literal for int() with base 10: ‘3.8’】(值异常:浮点类型字符串无法使用int()强制转换)。
print(int('3.8')) # 运行后显示结果:ValueError:invalid literal for int() with base 10: '3.8'
虽然浮点形式的字符串,不能使用int()函数。但浮点数是可以被int()函数强制转换的。
如将浮点数3.8强制转换整型的语句。但是,为什么输出的结果是3呢?
int()函数的本质是将数据转换为整数。所以对于浮点数,int()函数会做取整处理。但是,同我们平时对小数四舍五入的处理方法不同,int()函数会直接抹零,直接输出整数部分。
如果遇到这种情况:字符串就是小数形式,比如’3.8’这种。我不想让它变为整数3,想让它保持小数形式的3.8,那我要怎么做呢?
-
float()函数
首先float()函数的使用,也是将需要转换的数据放在括号里,像这样:float(数据)。
其次,float()函数也可以将整数和字符串转换为浮点类型。但同时,如果括号里面的数据是字符串类型,那这个数据一定得是数字形式。
下面,我们通过一张图小结一下这三个函数。