day1·python数据类型

值类型与引用类型

值类型(元祖、字符串、整型、浮点型、复数、布尔型)~值发生改变,内存地址也发生了改变
引用类型(字典、列表、集合)~值发生改变,内存地址未发生改变

变量与数据类型

变量里存储的是数据(值对象)对应的内存地址
通过内存地址访问值对象这种方式叫引用
赋值语句实际上是在修改变量的引用
使用id(变量)可查看变量存的地址

序列

可以使用for循环遍历得出下一个值
序列分为有序序列和无序序列
有序序列可以借助索引访问或删除,无序序列不可以
支持成员运算符in 、not in判断,返回结果为True/False

哈希

通过hash函数获取到对象的特征码,返回的是一个整型
hash是一种算法
可哈希的对象一定是不可变数据类型

可变与不可变数据类型

可变数据类型:数据值发生改变内存地址不变(列表、字典、集合),改变值借用的是方法而非赋值语句
不可变数据类型: 数据值发生改变内存地址变化(字符串、整型、浮点数、布尔型、元祖

数据类型划分

在这里插入图片描述

整型

整数,int类型,可参与运算符计算

浮点型

小数,float类型,可参与运算符计算

字符串

字符类型,用单/双/三引号成对出现方式声明

  1. 有序序列
  2. 可以切片得到返回新的一个字符串对象
  3. 可以使用+号连接两个字符串形成新的一个字符串对象
  4. 将数据类型变成字符串后可以使用正则查找替换(replace)字符串
  5. 字符串对象拥有丰富的方法库(find(str)、count(str)、index(str)、replace(old、new))
  6. 元素可重复

格式化字符(字符串一部分的内容是变量指向的值)的方式
1.使用%d(变量是整型) %s(变量可以是任意类型) %f (变量是浮点型)占位
2.使用"…{索引:可传可不传}…“.format()
3.使用f”…{变量名/表达式}…"

布尔型

True/False, 0/None/空字符串/空元组/空集合/空列表/空字典/0.0为假,其它均为真

·用处
用在循环/条件判断(if /while)

列表

list类型,空列表定义(list()/[])

  1. 有序序列
  2. 支持增(append(x),extend(序列),insert(index,value))删(del list[index],remove(value),pop(index:默认弹出最后一个元素)) 改(list[index]=value)查(list[index])
  3. 列表支持反转(使用reverse方法或切片倒序)
  4. 支持切片
  5. 元素可重复

元组

tuple类型,空元组定义tuple/(),如果元组只有一个数据用(value,)
备注:t1=1,2这种用逗号分隔的形式也是元组定义,例如return value1,value2

  1. 有序序列
  2. 不支持增删改(不可变类型)

集合

set类型,空集合定义,空集合定义set(), 可认为只存储了key值

  1. 无序序列
  2. 支持增(add(value),update(字符串)~将字符串拆分单个追加到集合中)删(remove(value)) 查(只能访问全部元素)
  3. 集合支持交(&)并(|)差(-)

字典

dict类型,空字典定义{},定义{key:value}, 通过key查找value,速度快

  1. key无序
  2. 可以通过for循环遍历key(dict.keys()),遍历vlaue(dict.values()),遍历key与value(dict.items())
  3. 修改key对应的值(dict[key]=value),删除key(dict.pop(key),del dict[key]),添加dict[key]=value
  4. key是不可变类型(可哈希)

浅拷贝与深拷贝

针对的是列表、字典、集合可变数据类型

浅拷贝···拷贝的是对象的引用(拷贝后原始对象和现有对象操作的是同一块内存地址,所以两个的操作都会改变对象引用的值)

深拷贝···找到对象的引用对应的值,然后在内存开辟新的空间存放这些值。原对象和现对象互不影响

浅复制

对象.copy(),一级对象是深拷贝,二级对象浅拷贝

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值