Python基本数据类型及转换(Python系列05)

1.Python有哪些数据类型

数据类型赋值案例可变性
整型 inta = 1不可变
浮点型 floata = 1.0不可变
复数类型 complexa = 1 + 3j不可变
布尔类型 boola = True不可变
字符串 stra = 'hello world'不可变
元组 tuplea = (1, 2, 3, 4, 5, 6)不可变
列表 lista = [1, 2, 3, 4, 5, 6]可变
集合 seta = {1, 2, 3, 4, 5, 6}可变
字典 dicta = {20231130: '大帅哥'}key:不可变,value:可变

可变性是什么呢?

可变性数据类型的值可以被改变,例如添加、删除或修改元素

不可变性数据类型的值不能被改变,例如不能添加、删除或修改元素。

想要改变不可变数据类型的值如下图

如上图所示,改变int数据类型的值时需要重新赋值,而重新赋值,改变的并不是9001内存地址指向空间里的数据42,而是在内存中重新开了一块空间,有了指向这块空间的新的内存地址9002,然后用9002覆盖变量名指向空间中储存的地址。而储存数据42的这块空间,没有变量名再“牵着”它,它将会被GC(垃圾回收器)回收,不再占用内存。

所以,如果要改变这些不可变数据类型的值,只能重新创建一个新的对象。

2.Python数据类型转换

转换类型结果 = 目标类型(待转类型)总结知识点
其他类型转换为int类型

result = int('8') # 8

result = int(8.8) # 截断 8

result = int(True) # 1,False则是0

当将str类型转换成int类型,待转数据必须"长得像"整型,比如"8",而"8.8"则程序会报错。

当浮点转换为整型,结果会截断,什么是截断,就是小数部分不要了。

其他类型转换为float类型

result = float('8.8') # 8.8

result = float(8) #  8.0

result = float(True) # 1.0,False则是0.0

当将str类型转换成float类型,待转数据必须"长得像"整型或浮点型,比如"8"或"8.8",如"abc"则会报错。
其他类型转换为str类型结果 = 目标类型(待转类型)任何数据类型都可转换为字符串,没有什么限制。
其他类型转换为bool类型

bool(0), bool(""), bool([]), bool({}),bool("0.0"),bool(()),

bool(None)

# 这些都返回的是False,除了这些,其他的数据都返回True

任何的数据都能转换为bool类型,除了刚才提到的哪些每个数据类型中的空值外,其他的都返回True,

这个特性常用在判断语句中,如

if a: 

        print("执行a不为空时的代码")

  • 11
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值