Python-类型转换

python的几种最基本的数据类型,我们已经见过:

字符串

整数

小数 (浮点数)

bool类型

python在定义一个变量时不需要给它限定类型。变量会根据赋给它的值,自动决定它的类型。你也可以在程序中,改变它的值,于是也就改变了它的类型。例如

a = 1
print a
a = 'hello'
print a
a = True
print a

变量a先后成为了整数、字符串、bool类型。

虽然类型可以随意改变,但当你对一个特定类型的变量进行操作时,如果这个操作与它的数据类型不匹配,就会产生错误。比如以下几行代码

print ‘Hello’+1
print ‘hello%d’ % '123'

程序运行时会报错。因为第一句里,字符串和整数不能相加;第二句里,%d需要的是一个整数,而'123'是字符串。

这种情况下,python提供了一些方法对数值进行类型转换:

int(x) #把x转换成整数
float(x) #把x转换成浮点数
str(x) #把x转换成字符串
bool(x) #把x转换成bool值

上述两个例子就可以写成:

print ‘Hello’+str(1)
print ‘hello%d’ % int('123')

以下等式的结果均为真:

int('123') == 123
float('3.3') == 3.3
str(111) == '111'
bool(0) == False

并不是所有的值都能做类型转换,比如int('abc')同样会报错,python没办法把它转成一个整数。

另外关于bool类型的转换,我们会专门再详细说明。大家可以先试试以下结果的值,自己摸索一下转换成bool类型的规律:

bool(-123)
bool(0)
bool('abc')
bool('False')
bool('')

版权声明:
作者:yfeer
链接:https://www.yfeer.com/180.html
来源:个人编程学习网
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>