二、Python的数据类型转换

目录

类型转换定义:将一个类型的数据转换为其它类型的数据。

为什么要转换成数据类型?

数据类型转换成整数(int)

数据类型转换成浮点数(flaot)

数据类型转换成字符串(str)

数据类型转换成为布尔值(bool)

隐式类型转换


类型转换定义:将一个类型的数据转换为其它类型的数据。

age = input("请输入您的年龄:") # input默认输出是字符串类型
print(type(age)) # 使用type()函数查看属于哪种数据类型

为什么要转换成数据类型?

  1. 因为不同的数据类型,进行运算时,它的运算规则不一样。

  2. 注意:input 接收到的用户输入,都是 str 字符串类型。

  3. 在Python里,如果字符串和数字做加法运算,会直接报错。

age = input("请输入您的年龄:")
print(age + 1) # 会直接报错
  1. 如果要将以上代码改为正确的,必须要进行强制类型转换,代码如下:

age = int(age) # 将字符串类型 age 转换成 int(数字类型)
print(age + 1)

数据类型转换成整数(int)

  • 使用 int 内置函数可以将数据转换成为整数,例如:

a = '21'        
b = int(a)
print(a)
print(b+1)
# 如果字符串不是一个合法的数字,会直接报错==> a = 'hello'
x = '1a2c'
y =int(x,16)  # 把字符串 1a2c 当作十六进制转换成为整数
print(y) # 打印一个数字,默认使用十进制输出
m = '12'
n = int(m,8) # 把字符串的12 当作八进制转换成为整数
print(n)

数据类型转换成浮点数(flaot)

  • 使用 float 内置类可以将其它数据类型转换成为 float 浮点数

a = '12.34' 
b = float(a)
print(b+1)
c = float('hello') # 如果字符串不能被转换成为有效的浮点数,会报错
print(c)

数据类型转换成字符串(str)

a = 34
b = str(a)
print(a)
print(b) # 字符串不能与数字进行加法运算,否则会报错
print(type(a)) # 查看数据类型 ==> <class 'int'>(该类型为整型)
print(type(b)) # 查看数据类型 <class 'str'>(该数据类型为字符串)

数据类型转换成为布尔值(bool)

  • 使用 bool 内置函数可以将其它数据类型转换成为布尔值

print(bool(100)) # 将数字100转换成为布尔值,值为True
print(bool(-1))  # 将-1转换成为布尔值,值为True
print(boo(0))    # 将0转换成为布尔值,值为False
  • 有些朋友会这么问,当将0转换为布尔值时,运行结果会是False,其他数字都是True?

  • 原因很简单,数字里,只有数字 0 才被转换成为布尔值False,其它数字转换成为布尔值都是True,记住这一点即。

  • 在字符串里,只有空字符串 ' ' / " " 可以转换成为False,其它字符串都转换成为True,代码如下:

print(bool('hello')) # 值为True
print(bool('False')) # 值为True
print(bool(''))      # 值为False
print(bool(""))      # 值为False
  • 布尔值(bool)为False 有以下这些:

print(bool(None)) # False 空数据类型
print(bool([]))   # False 空列表类型
print(bool(()))   # False 空元组类型
print(bool({}))   # False 空字典类型
print(bool(0))    # False 数字0
s = set() , print(bool(s)) # False 空集合类型
  • 在计算机里,True 和 False 其实就是使用数字 1 和 0 来保存的,例如:

print(True + 1) # 值为2
print(False + 1) # 值为1

隐式类型转换

  • 当条件满足并且等于True时,会直接被打印结果,例子如下:

if 3 > 2:
    print('hello') # 值为hello

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值