一、字典的应用场景
列表中有数据有多个元素,且有相应的对应关系时,使用列表不足够表示
二、字典的创建
dict_data = { key:value,key1:value1}
1,符号以大括号表示
2,数据是以键值对出现的 键值中间用冒号连接
3,key的数据必须是不可变类型,key是不重复的
定义一个空的字典
# dict_data = {}
# print(dict_data)
# print(type(dict_data))
# 定义一个有数据的字典 value可以是任意数据类型
# 字典没有索引 无序的,因为没有索引才表现出来没有顺序
# 字典可以根据key获取value
# O(1) 哈希查找
# dict_data = {'小明':20,'小芳':{'age':18,'gender':'女'}} #如果有多个数据key相同,会将后面的覆盖前面的数据
# print(dict_data['小芳'])
三、字典的常规操作
#增加数据
# dict_data={'小明':20} # dict_data['小芳']=18 #索引=value,增加数据的方式 # dict_data['小芳']={'age':18,'gender':'女'} # print(dict_data)
#字典修改 当key重复的时候,后面进来的数据会覆盖前面的数据 # dict_data = {'小明':20} # dict_data['小明']={'age':18,'gender':'女'} # print(dict_data) #当数据不存在就增加 存在就修改
#数据删除 dict_data = {'小明':20} del dict_data['小明'] print(dict_data)
# list1 =[1,2,3,4,5]
# print(dict_data.fromkeys(list1,0))
#{1: 0, 2: 0, 3: 0, 4: 0, 5: 0} #统一初始化
# print(dict_data.get('小明1')) #None
# print(dict_data.get('小明1',False)) #False
# print(dict_data.get('小明1',-1)) # -1
# 获取一个数据,如果存在就返回value,不存在就返回None
# None是可以改变的,当不存在时返回这个位置的数据,默认为None, 可以是False,1,-1
# pop删除一个列表的数据
# dict_data.pop('小明') #删除指定key的数据,与del同
# print(dict_data)
# popitem 删除字典中最后一个数据
# dict_data={'小刚':21,'小明':20,'小芳':18}
# print(dict_data)
# dict_data.popitem()
# print(dict_data)
# update 更新 extend
# dict_data = {'小刚': 21, '小明':
20}
# # dict_data.update({'小芳':18}) #{'小刚': 21, '小明': 20, '小芳':
18}
# dict_data.update({'小明': 18}) # {'小刚': 21, '小明': 18}
# print(dict_data)
四、字典的循环遍历 # keys 获取字典中的所有key 存放到一个dict_keys的对象里面 # dict_data = {'小刚': 21, '小明': 20} # print(type(dict_data.keys())) # print(dict_data.keys()) # print(list(dict_data.keys()))
# for i in dict_data.keys(): # print(i)
# value获取字典中的所有values # dict_data = {'小刚': 21, '小明': 20} # print(type(dict_data.values())) # print(dict_data.values()) # for i in dict_data.values(): # print(i)
# items # dict_data = {'小刚': 21, '小明': 20} # print(type(dict_data.items())) # print(list(dict_data.items())) # for i in dict_data.items(): # print(i) # print(list(i)) #列表可修改,元组不可修改
# 压缩 压缩数据到一个变量里面 以元组存储
# a = '小明',18
# print(a)
# # 解包 只能用于知道里面是什么数据的场景
# name, age = a
# print(name,age)
dict_data = {'小刚': 21, '小明': 20}
# print(type(dict_data.items()))
# print(list(dict_data.items()))
# for name,age in dict_data.items():
# print(name, age)
# # print(i[0],i[1])
# 推荐解包的方式,有描述性
五、创建集合 # set_data = {数据,数据,数据,数据,......} # 无序的,唯一的 # 集合没有索引和key
#字义一个空的集合
set_data = set()
print(type(set_data))
六、集合特点
# 无序的
# set_data = {0,1,2,3} #{0, 1, 2, 3}
# set_data1 = {100,200,300} #{200, 100,
300}
# print(set_data1)
# 唯一的 去除重复的数据,快速去重
# set_data = {0,1,2,3,3}
# set_data = {'0', '1', '2', '3', '3'} #
{'3', '2', '0', '1'}
# print(set_data) # {0, 1, 2, 3}
七、集合常规操作
# add增加数据
# set_data = {0,1,2,3,3}
# set_data.add(100)
# print(set_data)
# # remove删除
# set_data.remove('0')
# print(set_data)
八、几种数据类型比较
1.字义
字符串 列表 字典 元组
'' [] {}
()
str() list() dict() tuple()
字义一个空的集合
# set_data = set()
# print(type(set_data))
2. # bool int float str list tuple dict set 基础数据类型 # 可变数据类型 list dict set
标签:小明,Day08,print,set,dict,集合,data,字典 From: https://www.cnblogs.com/xiaoabai/p/17074181.html