python中如何进行数据类型转换_python数据类型的强制转换

edd43d9deeba10c29861f28369675c3d.png

首页 专栏 python 文章详情

0

python数据类型的强制转换

6ba75ba487413264c1916b965241993f.png

小小垂髫 发布于 1 月 21 日

数据类型的强制转换

如果要将一个数据转换成另一个数据类型,只需要将其放入相应类型的函数中去。

Number类型的数据转换

强制转换为int

可以转换的数据类型 int 整型 float 浮点型 bool 布尔型 str 字符串(整型)

数据转换

# 整型(整型转换是原封不动的)

print(int(10))

# 浮点型(浮点型转成整型按照退一法)

print(int(10.999))

# 布尔型(布尔型只有两种值,转换成为整型也只有两种,True=1,False=0)

print(int(True))

print(int(False))

# 字符串(字符串只有去掉引号是整型的才能转换)

print(int('-123'))

print(int('123'))

强制转换为float

可以转换的数据类型 int 整型 float 浮点型 bool 布尔型 str 字符串(整型、浮点型)

数据转换

# 整型(整型转换是添加一位小数,小数位为0)

print(float(10))

# 浮点型(浮点型转换原封不动)

print(float(10.999))

# 布尔型(布尔型只有两种值,转换成为整型也只有两种,True=1.0,False=0.0)

print(float(True))

print(float(False))

# 字符串(字符串只有去掉引号是整型和浮点型的才能转换)

print(float('-123'))

print(float('1234.134'))

强制转换为bool

可以转换的数据类型

python中所有的数据类型都可以转换成为布尔型,但是结果只有两种,True 和 False

数据转换

在python中,只有十种情况下的数据转换成为bool的值是False,其余皆为True。

# 就是说,python中一切为空的数据都为False

# 1、整型 (0)

print(bool(0))

# 2、浮点型(0.0)

print(bool(0.0))

# 3、布尔型(False)

print(bool(False))

# 4、复数(0j)

print(bool(0j))

# 5、字符串(空字符串)

print(bool(''))

# 6、列表(空列表)

print(bool([]))

# 7、元组(空元组)

print(bool(()))

# 8、集合(空集合)

print(bool(set()))

# 9、字典(空字典)

print(bool({}))

# 10、None(python关键字,表示什么也没有)

print(bool(None))

强制转换为complex

可以转换的数据类型 int 整型 float 浮点型 bool 布尔型 complex 复数 str 字符串(整型、浮点型、复数)

数据转换

# 整型(整型转换是原数+0j)

print(complex(10))

# 浮点型(浮点型转换是原数+0j)

print(complex(10.999))

# 布尔型(布尔型只有两种值,转换成为整型也只有两种,True=1+0j,False=0j)

print(complex(True))

print(complex(False))

# 复数(复数转换原封不动,0+0j=0j)

print(complex(1234+341j))

print(complex(0+0j))

# 字符串(字符串只有去掉引号是整型、浮点型和复数的才能转换)

print(complex('-123'))

print(complex('1234.134'))

print(complex('1234+0j'))

数字类型的自动转换

不同类型的数字在一起运算时,结果会按照精度从低到高自动的进行转换。当低精度的数与高精度的数进行运算,最后会变为高精度数类型

精度从低到高排序:

bool -----> int -----> float ------> complex bool和除了bool之外的任何数据类型运算结果都不会是bool complex 与任何类型的数据进行运算都会变成complex

# 例如低精度的bool和高精度的int进行运算,其结果会自动的转变成为高精度的int

# bool + int

res = True + 100

print(res, type(res))

# bool + float

res = True + 100.11

print(res, type(res))

# bool + complex

res = True + 0j

print(res, type(res))

# int + float

res = 123 + 100.9

print(res, type(res))

# int + complex

res = 123 + 0j

print(res, type(res))

# float + complex

res = 100.0000 + 0j

print(res, type(res))

container类型的强制转换

容器类型的转换,使用相应容器的函数进行转换。

转换为字符串

支持转换的数据类型

所有的数据类型

# 方法1、直接加引号

print('[1, 2, 3]')

# 方法2、使用str函数

print(str([1, 2, 3]))

# [1, 2, 3]

# 方法3、使用repr函数

print(repr([1, 2, 3]))

# [1, 2, 3]

# repr函数的作用:原型化输出字符串,不转义字符(显示出引号)

lstvar = [1, 2, 3]

res = str(lstvar)

print(repr(res))</

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值