python数据结构总结

python的数据结构

如何查看变量的数据类型

x=1+2j
print(type(x))

数字型

int(整形)、float(浮点型)、complex(虚数)

#整型变量的定义
_x=5
#浮点型变量的定义
_y=5.0002
#虚数变量类型定义
_z=1+2j

Boolean数字类型(表达真或假)

x=True
y=False

x=0#False
y=1#True

String数据类型

x=''
y=""
z=''''''
k=""""""

列表数据类型

x=[1,2,3,4,5]

元组数据类型

y=(1,2,3,4)

字典数据类型

z={'k1':1,'k2',k3:[]}

len内置函数(返回集合类型的个数)

x=[1,2,3,4]
print(type(x))
print(len(x)
print(x[4])

python的3种数据类型的增删减改

list

l=[]
l.append(1)
l.append(2)
l.append(3)
print(l)
print("index0value=%d"%[0])
输出:
[1, 2, 3]
index 0 value=1

修改值操作

l=[1,2,3,4]
l[0]=5#命令中0为下标
print(l)
输出:[5, 2, 3, 4]

删除对应下标的值

l=[1,2,3,4]
del l[0]
print(l)
输出:[2,3,4]

count(计算元素在列表中出现的次数)

l=[3,3,3,3,3,3]
print(l.count(3))
输出:6

extend(将两个数组合到一起)

l=[1,2,3,4]
x=[5,6,7,8]
l.extend(x)#前.extend(后)
print(l)

index(显示元素下标)

l=[1,2,3,4,5,3,3,3,3]
print(l.index(3,1,5))
输出:2

#index(查询目标,起始目标,截止目标)在起始目标与截止目标之间检索  起始目标和截止目标的数字代表元素下标
#index(查询目标,起始目标)无截止目标,从起始目标开始检索
#index(查询目标)如果有相同元素会显示此元素在列表中第一次出现的下标位置
#相同元素优先选取第一次出现的位置

insert(在固定下标位置之前放置新的元素)

l=[1,2,3,4]
l.insert(1,4)
#l.insert(固定下标,放置元素)
print(l)
输出结果:[1, 4, 2, 3, 4]

remove(删除元素)

l=[1,2,3,4]
l.remove(3)#括号内的3为元素,非下标
print(l)
输出结果:[1,2,4]

reverse(反转列表)

l=[1,2,3,4]
l.reverse()
print(l)
输出:[4,3,2,1]

sort

l=[1,2,3,4]#0~2
l.sort(reverse=False)
print(l)

copy(拷贝)

l=[1,2,3]
lc=l.copy
l[0]=5
print(lc)
print(l)
输出结果:
[1, 2, 3] 
[5, 2, 3]

pop(删除、删除并返回)

l=[1,2,3]
d=l.pop(2)
print("d=%d"%d)
print(l)
输出结果:
d=3
[1,2]

clear(清除列表所有元素)

l=[1,2,3]
l.clear()
print(l)
输出:[]

元组(tuple)

1、定义元组用()或是tuple()定义

2、两个方法index和count参考list对这两个方法的使用

#数组
l=[1,2,3,4,1,1,1,1]
print(l.index(2,0,5))
print(l.count(1))
#元组
t=(1,2,3,4,1,1,1,1)
print(t.index(2,0,5))
print(t.count(1))

#输出结果:
1
5
1
5

字典

用一对{}或者dice()

部分使用方式和list相同

#字典
d={'k1':1,'k2':2}

#insert
d['k3']=3
print(d)

#update
d['k3']=4
print(d)

#del
del d['k3']
print(d)

#search or find
print(d['k2'])

t={'z1':1,'z2':2}

tc=t.copy()
t['z1']=3
print(tc)
#输出结果:
{'k1': 1, 'k2': 2, 'k3': 3}
{'k1': 1, 'k2': 2, 'k3': 4}
{'k1': 1, 'k2': 2}
2
{'z1': 1, 'z2': 2}

pop(在字典中删除并单独返回)

d={'k1':1,'k2':2}
print(d.pop('k1'))
print(d)
#输出结果:
1
{'k2':2}

get(在字典中取出)

d={'k1':1,'k2':2}
print(d.get('k1'))
#输出结果:
1

item(循环)

d={'k1':1,'k2':2}
for k in d.items():
	print("key=%s,value=%d"%(k[0],k[1]))
输出结果:key=k1,value=1
		key=k2,value=2

keys和values

#字典
d={'k1':1,'k2':2}
for k in d.keys():
    print(k)
print("*"*20)(分割线)
for v in d.values():
    print(v)
#输出结果:
k1
k2
********************
1
2

popitem

d={'k1':1,'k2':2,'k3':3}
#popitem删除末尾
item = d.popitem()
print(d)
#如果字典是空的使用popitem会显示KeyError 采用时要注意
#输出结果:
{'k1': 1, 'k2': 2}
匿名

发表评论

匿名网友