Python入门学习(七)---字典

1.为什么要使用字典

因为字典可以实现由key取出value的操作
字典也是用{},不过存储的元素是一个个的键值对
在这里插入图片描述
在这里插入图片描述
输出结果:
在这里插入图片描述
在字典中,如果有两个key重复了,则新的key会自动覆盖老的key

2.在字典中取值

字典[key]
在这里插入图片描述

3.字典的嵌套

在这里插入图片描述

4.字典的常规操作

1.新增元素

字典[key]=value,其中key不存在的话,则相当于自动创建了新的元素

2.更新元素

字典[key]=value,因为key不可重复,所以新的kval覆盖了老的value

3.删除元素

字典.pop(元素)
pop在列表中是根据下标索引删除指定元素
pop在集合中是随机取一个元素
在这里插入图片描述

4.清空元素

字典.clear()

5.获取全部key

字典.keys()

6.遍历字典

方式1:通过字典.keys()方法获取到全部的key
在这里插入图片描述
方式2:直接对字典进行for循环,每一次循环都是直接得到key
在这里插入图片描述

7.统计字典的元素数量

len(字典)
在这里插入图片描述
课后练习
在这里插入图片描述

#定义字典
staff_info={
    "wanglihong":
        {"bumen":"kejibu","gongzi":3000,"jibie":1},
    "zoujielun":
        {"bumen":"shichangbu","gongzi":5000,"jibie":2},
    "linjunjie":
        {"bumen":"shichangbu","gongzi":7000,"jibie":3},
    "zhangxueyou":
        {"bumen":"kejibu","gongzi":4000,"jibie":1},
    "liudehua":
        {"bumen":"shichangbu","gongzi":6000,"jibie":2}
}
#对员工信息进行遍历
keys=staff_info.keys()
for key in keys:
    #对所有jibie为1的员工,级别上升1级,工资增加1k
    if staff_info[key]["jibie"]==1:
        staff_info[key]["gongzi"]+=1000
        staff_info[key]["jibie"]+=1
    #遍历员工信息
    print(f"{key}:{staff_info[key]}")
8.数据字典之间的转换

1.转列表 list(容器)
2.转元组 tuple(容器)
3.转字符串 str(容器)
4.转集合 set(集合)
5.字典是以键值对方式进行存储,转成其他容器的结果是key的序列或集合,但是其他容器不能转换成字典

9.容器通用排序功能

sorted(容器,reverse=Ture) reverse表示将结果反转(默认是不反转)

name="agajgajsgjhakg"
print(sorted(name,reverse=True))

即默认是从小到大,容器的排序结果通通以列表形式返回

10.字符串大小比较

字符上的比较是通过ASCII码表上的值来进行比较
在这里插入图片描述

字符串相比较:
是按位比较,即一位一位的进行对比,只要有一位大,那么整体就相对较大
在这里插入图片描述

print("abd"<"bcd")

结果如下:
在这里插入图片描述

案例:(可视化章节map的相关知识)向字典中添加key:为数字,Value为列表,列表有n个元素,每个元素是一个元组(借助append()函数)

#字典中如果有year数据,则将元组添加
try:
	dict[year].append(name,age)
#没有则将year加入字典
except Exception as e:
	dict[year]=[]
	dict[year].append(name,age)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值