数据类型int、float、str、list、dict、set定义及常用方法汇总

数据类型int:记录整数事物状态

可变不可变:值不可变类型,改变变量值实则是改变了变量的指向

int():功能:1、工厂函数, i = 5 <==> i = int(5)

2、强制类型转换,i = int("5") ==> i= 5

常用方法:int.bit_length()  返回int变量所占二进制位数

数据类型float:用于记录浮点型事物状态,如身高,体重等带小数点的属性

可变不可变:值不可变类型,改变变量值实则是改变了变量的指向

float():功能:1、工厂函数, i = 5 .0<==> i = float(5)

2、强制类型转换,i = float("5.0")  ==> i= 5.0

int()和float都可以进行 +、- 、* 、/、//、%、**、%=、/=、//= 等数学运算以及 ==、<、>、!=、<= 、>=等比较运算

数据类型str:记录可描述性事物状态

可变不可变:值不可变类型,改变变量值实则是改变了变量的指向

str():功能:1、工厂函数,i = “egon” <==> i = str("egon")

2、强制类型转换, i = str(555)  ==>i = "555"

常用操作:i = “abcdef”

索引取值:i[1] = "b"

切片:i[1:5:2] ==> "bd"

循环:for i in i:print(i)

>>>

a

b

c

d

e

f

常用方法:strip(指定去除字符)  #去除首尾字符,默认为空格

replace(old,new,num) #用子字符串替换字符串中的某些字符,可指定替换个数

split(指定分隔字符,num) #  按指定字符分隔字符串,可指定分隔次数,默认从左到右分隔,从右到左分隔可用rsplit()

str.join(iterable) #将可迭代对象元素按用str连接成字符串,注意可迭代对象元素必须是字符串类型,否则报错

endswith(指定字符,start,end) #判断是否以指定字符开头,可指定索引起终止位置

startswith()#判断是否以指定字符结尾,可指定索引起终止位置

upper() #字符串字母大写

lower()#字符串字母小写

isdigit() #判断字符串是否由纯数字组成

find(指定字符,start,end) # 返回字符在字符串中的起始索引    可指定起始位置索引,找不到返回-1

index(指定字符,start,end)#返回字符在字符串中起始位置索引,可指定起始位置索引,找不到报错

.....

总结:所有对字符串的操作都是返回了新的值,原字符串不改变

数据类型list:存储多元素的容器

可变不可变:元素值可变类型,修改列表内部值不影响列表的内存地址

list常用操作:L=[“a”,4,“egon”,18]

索引取值:L[0] = "a"

修改元素值:L[0] = “b” ==> L = ["b",4,"egon",18]

切片:L[1:3:1]  ==> [4,"egon"]

删除:del[0],L.pop(索引)#返回被删除元素   L.remove(元素)

循环:for i in L:print(i)

常用方法:append(元素) #尾部追加

insert(索引,元素)#指定位置插入

reverse()#元素位置反转

extend(iterable) 追加可迭代对象所有元素

index(obj,start,end)查找指定元素,返回找到位置索引值,可指定起始终止位置索引,没找到报错

clear() 清空列表

copy() 浅拷贝,原列表嵌套列表,修改被嵌套的列表值时,copy出的列表相应的嵌套列表会被同步修改

如果想copy前后的列表完全无关可以用深拷贝:import copy      s = copy.deepcopy(list)

sort(key = 函数,reverse)按函数返回结果排序,可指定排序顺序

数据类型字典dict:存储一系列带属性类型元素 key:value形式

可变不可变:可变类型

常用操作:dic = {“name”:"egon","age":18}

1、根据key取值,dic["name"]  ==>"egon"

dic.get(key,default = None) 返回指定key 的值,如果指定的key不在字典中则返回默认值None,默认值可修改

dic.setdefault(key,default = None) 返回指定key的值,如果指定key不在字典中则返回默认值并新增键值对

2、增、修改值:dic["hobby"] = "basketball" ,如果字典包含key“hobby”,则覆盖原数据,如果没有则新增

dic.update(dict) 将dict键值对加到dic中,如有重复key则覆盖

dic.fromkeys(sqe,None) 批量添加key,sqe为可迭代对象,元素为新增的key,默认值None,可指定

3、删除:popitem() 随机删除一对键值对并以元组形式返回该键值对,对空字典用此方法会报错

pop(key) 删除指定key键值对并返回value

4、循环:for i in dic:  《==》 for i in dic.keys:

dic.keys\dic.values\dic.items不是列表,但是个迭代器,可以被循环,可以强制转换为list

数据类型tuple:存储一系列不可修改元素

可变不可变:不可变,如果元素为可变类型,元素内部值是可修改的

常用操作:t = (1,2,3,4,5)

索引取值:t[1] = 2

切片:t[1:4:2] ==>(2,4)

循环:for i in t:

常用方法:

count(x),返回x在元组中出现的次数

index(x,start,end)返回x在元组指定范围的索引值,可指定起终点索引

数据类型set:数据具有唯一性

可变不可变:可变

有序无序:无序,不可取值

常用操作:s1 = {1,2,3,4}   s2 = {3,4,5,6}

新增:s1.add(元素),s1.update(s2)

删除:clear()清空set,pop()随机删除并返回值

remove(元素) 删除指定元素

复制:copy()

常用运算:

& 交集

s1 & s2 ==》{3,4}

| 并集

s1 | s2 ==>{1,2,3,4,5,6}

- 差集

s1 - s2 ==》{5,6}

^ 对称差集

s1 ^ s2 ==》 {1,2,5,6}

常用方法:

s1.isdisjoint(s1) 判断是否没有交集,没有返回True 有返回Flase

s1.issubset(s2) 判断是都是s2的子集

s1.issuperset(s2) 判断是否是s2的父集

上一篇:轻量级代码生成器-OnlyCoder


下一篇:JAVA实体类不要使用基本类型,基本类型包含byte、int、short、long、float、double、char、boolean