04-基础数据类型

04-基础数据类型
强烈推介IDEA2021.1.3破解激活,IntelliJ IDEA 注册码,2021.1.3IDEA 激活码  

大家好,我是架构君,一个会写代码吟诗的架构师。今天说一说04-基础数据类型,希望能够帮助大家进步!!!

  • python 内置的数据类型:

Python中的对象分为:可变对象和不可变对象。Python中,数值类型(int和float)、字符串str、元组tuple都是不可变类型。而列表list、字典dict、集合set是可变类型。 
可变对象由于所指对象可以被修改,所以无需复制一份之后再改变,直接原地改变,所以不会开辟新的内存,改变前后id不变。不可变对象,变量对应内存的值不允许被改变。当变量要改变时,实际上是把原来的值复制一份后再改变,开辟一个新的地址,astr再指向这个新的地址(所以前后astr的id不一样),原来astr对应的值因为不再有对象指向它,就会被垃圾回收。这对 于int和float类型也是一样的。

set:键 dict:键值对 
初始化:list [1,'a'] 
tuple ('a',1) 
set([1,2]) 或{1,2}
dict {'a':1,'b':2}

 

list: 链表, 有序的项目, 通过索引进行查找, 使用方括号"[]"

1.任何对象的有序集合,按照一定顺序组织起来的。 
2.通过偏移读取。组成元素的值叫做元素,每一个元素被标识一个索引,第一个索引是0,序列 的所有功能都能实现。

 

dict: 字典, 字典是一组键(key)和值(value)的组合, 通过键(key)进行查找, 没有顺序, 使用大括号"{}"

1.通过键而不是偏移量来读取。字典就是一个关联数组,是一个通过关键字索引的对象的集合,使用键-值(Key-value)进行存储,查找速度快 
2.任意对象的无序集合。字典中的项没有特定顺序,以“键”为象征
3.可变长、异构、任意嵌套
同列表,嵌套可以包含字典和其他字典

4.对象引用表 
字典存储的是对象引用,不是拷贝,和列表一样。字典的Key是不能变的,list不能作为key,str、tuple、int等都可以

str:字符串,用单或双引号括起来表示字符串

tuple: 元组, 元组将多样的对象集合到一起, 不能修改, 通过索引进行查 找, 使用括号"()"
set: 集合,无序, 元素只出现一次, 使用"set([])",可实现列表快速去重, 不过注意返回的是一个集合
int: 整数,如 3
float:浮点数,如 2.3
complex:复数,如 complex(1,2) => 1+2j

可迭代(遍历)对象:list、dict、tuple、set、str
可变类型:list、dict、set,其余为不可变类型
list、tuple、str 可通过索引获取当中的元素
set 不支持索引查找,因为数据只出现一次, 它只关心数据是否出现,不关心其位置


和list相比,dict有以下几个特点:
1.查找和插入的速度极快,不会随着key的增加而增加
2.需要占用大量的内存,内存浪费多
而list相反:
1.查找和插入的速度随着元素的增加而增加
2.占用内存小,很少浪费内存

所以dict是用空间换取时间的一种方法
集合set:是一组key的集合,但不存储value,并且key不重复
重复元素在set中自动过滤。set可以看做数学上的无序和无重复元素的集合,两个set可以做数学集合上的交并集操作

 

转载于:https://www.cnblogs.com/xuebikele/p/11196752.html

本文来源weixin_30595035,由架构君转载发布,观点不代表Java架构师必看的立场,转载请标明来源出处:https://javajgs.com/archives/29658

发表评论