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}