python的6种常用数据结构
Python 最常用的数据结构有6种:数字、字符串、列表、元组、字典和集合。其中最为常用的是数字、字符串、列表和字典。
1、数字(number)
用于储存数值。Python3支持4种类型的数字:int(整数类型)、float(浮点类型)、bool(布尔类型)、complex(复数类型)。我们可以使用 type()函数查看数据类型;
2、字符串(string)
由数值、字母、下画线组成的一串字符,可以使用单引号(')、双引号(")和三引号("')指定字符串,使用“+”号可以连接两个字符串;
String字符串:
>>>names = "Alex,Jack,Rain,WuSir,BlackGirl"
>>>names
'Alex,Jack,Rain,WuSir,BlackGirl'
3、列表(list)
一维序列,变长,其内容可以进行修改,用“[]”标识;
List列表:
names = ["Alex","Jack","Rain","WuSir","BlackGirl"]
names.insert(4,"金角大王")
del names[4]
names.pop(1)
help(names.insert)
4、元组(tuple)
一维序列,定长、不可变,其内容不能修改,用“()”标识
# 元组中可以包含数字、字符串、列表、元组、字典、集合等
T = (1, 2.1, 'AAA', [20], (30,), {'age':20}, {3,4})
T[0] # 访问第1个元素
T[2] # 访问第3个元素
T[-1] # 访问最后一个元素
5、字典(dict)
最重要的内置结构之一,大小可变的键值对集,其中键(key)和值(value )都是Python 对象,用“{}”指定,可以使用大括号“{}”创建空字典;
特性:
1)key-value
2)key必须为不可变数据类型(字符串、数字)、必须唯一
3)可存放多个value、可修改、可以不唯一
4)无序
5)查询速度快,且不受dic大小的影响
{key1:value1,key2:value2}
info = {
“name”:"Alex Li",
"age":26
}
例子:
mes = {
“alex”:[23,"CEO",6600],
"黑姑娘":[24,"行政",4000],
}
增加操作:
mes["佩奇"] = [26,"讲师",40000]
删除操作:
mes.pop("alex") #删除指定key
del mes("alex") #删除指定key
mes.clear #清楚dict字典
修改操作:
mes["佩奇"] = [26,"讲师",40000] #如果key在字典中存在,'new_value'将会替代原来的value值;如果key在字典中不存在,则插入一条
查找操作:
mes["佩奇"] #取出
dic.get(key,default = None) #返回字典中key对应的值,若key不存在字典中,则返回default值(default默认为None)
'key' in dic # 若存在则返回True,没有则返回False
dic.keys() #返回一个包含字典所有KEY的列表
dic.values() #返回一个包含字典所有value的列表
dic.items() #返回一个包含所有(键,值)元组的列表
len(mes) #求长度
循环取值
for k in mes: #官方推荐,效率最高
print(k,mes[k])
for i in mes.items():
print(i)
for k,v in mes.items():
print(k,v)
6、集合(set)
由唯一元素组成的无序集,可以看成是只有键没有值的字典,可以使用大括号“{}”或者 set()函数创建集合。一个空集合必须使用 set()函数创建。