字典

字典的创建方式:

# 方式一:
dict1 = dict((("one", 1), ("two", 2), ("three", 3)))
print(dict1)   # {'one': 1, 'two': 2, 'three': 3}# 方式二:
dict2 = dict(one = 1, two = 2, three = 3)
print(dict2)  # {'one': 1, 'two': 2, 'three': 3}# 方式三:
dict3 = {"one":1, "two":2, "three":3}
print(dict3)# 方式四:
dict4 = dict({"one":1, "two":2, "three":3})
print(dict4)

可变、不可变数据类型:

  • 可变数据类型:list,dict,set
  • 不可变数据类型:int bool str tuple
# 字典的键必须是不可变数据类型
dict5 = {[1,2,3]:12, 1:"lisi"}
print(dict5)   # TypeError: unhashable type: 'list'

字典的键必须唯一:

# 字典的键必须唯一  否则后边键的值会把前边同名键的值覆盖掉
dict6 = {1:1, 1:2, 2:3}
print(dict6)   # {1: 2, 2: 3}

dict7 = {"name":"张三", "age":18}
dict7["sex"] = "男"   # 有则改,无则加
dict7["name"] = "李四"  # {'name': '李四', 'age': 18, 'sex': '男'}
print(dict7)        # {'name': '张三', 'age': 18, 'sex': '男'}# 设置默认值  setdefault   有则不变,无则增加
dict7.setdefault("hobby")   # 不设置值,默认为None
print(dict7)       # {'name': '李四', 'age': 18, 'sex': '男', 'hobby': None}dict7.setdefault("hobby", "球类运动")   # 有则不变
print(dict7)       # {'name': '李四', 'age': 18, 'sex': '男', 'hobby': None}

# pop   根据字典的键删除数据,没有指定的键则报错
dict7.pop("hobby")
print(dict7)  # {'name': '李四', 'age': 18, 'sex': '男'}# 删除不存在的键报错
dict7.pop("hobby")
print(dict7)    # KeyError: 'hobby'ret = dict7.pop("hobby", "没有此键")
print(ret)    # 没有此键# clear  清空
dict7.clear()
print(dict7)   # {}# del
del dict7["name"]
print(dict7)# 删除不存在键报错
del dict7["name"]
print(dict7)   # KeyError: 'name'

改 直接给相应的键赋值

dict8 = {"name":"张三", "age":18}
dict8["name"] = "李四"
print(dict8)   # {'name': '李四', 'age': 18}

dict8 = {"name":"张三", "age":18}
l1 = dict8.get("name")
print(l1)   # 张三# 想要获取的键不存在,使用get不会报错,默认返回None
l2 = dict8.get("sex")
print(l2)  # None# 指定没有相应键时的返回值
l3 =dict8.get("sex", "没有获取到")
print(l3)  # 没有获取到# keys
keys = dict8.keys()
print(keys)   # dict_keys(['name', 'age'])
print(list(keys))  # ['name', 'age']# 获取字典的key
for key in dict8.keys():print(key)# 获取字典的value
for value in dict8.values():print(value)for i in dict8.items():print(i)    # 以key,value的形式放在元组中('age', 18)# 通过元组拆包获取key,value
for key, value in dict8.items():print(key,value)

python图书管理系统增删改查_python基础-字典的增删改查相关推荐

  1. 一个简单的基于python图书管理系统

    一个简单的基于python图书管理系统 开发平台:pycharm 开发语言:python 数据库:mysql 登录界面 主界面 数据库文件 想要的联系丘丘:793064854.2R带走

  2. python图书管理系统基本增删改查函数实现

    # 准备工作 warning = ["傻", "蠢", "笨", "呆", "愚"] # 敏感词 u ...

  3. python图书管理系统增删改查_图书管理系统---增删改查

    此代码只考虑正确情况,未判断错误情况 package dboperate; import java.util.Scanner; import model.BookDB; import dboperat ...

  4. python字典进行大写转化_python之字典的增删改查

    1.列表的缺点 列表可以存储大量的数据,数据之间的关联性不强. 列表的查询速度比较慢. 容器型数据类型:dict 2.数据类型的分类(可变与不可变) 可变(不可哈希)的数据类型:list dict s ...

  5. python容量变化类型有哪些_python基础数据类型补充以及编码的进阶

    一. 基础数据类型补充内容 1.1 字符串 字符串咱们之前已经讲了一些非常重要的方法,剩下还有一些方法虽然不是那么重要,但是也算是比较常用,在此给大家在补充一些,需要大家尽量记住. #captaliz ...

  6. python图书管理系统

    以下三个文件需在同一目录下.json文件格式不能更改 books-fxm.json [{"name": "图书管理","author": & ...

  7. Python图书管理系统(一)

    最近在写一个项目--图书管理系统 在完成这个项目的道路上我写了2个基础的图书管理系统. ①用IO完成数据存储的图书管理系统 ②用MySQL完成数据存储的图书管理系统    今天先来更新第一个用IO操作 ...

  8. python毕业设计开题报告-基于Python图书管理系统开题报告

    选题的背景.意义及研究现状: 研究背景及意义: 随着我国的教育产业的快速发展,各个学校的学生数量越来越多,在这种情况下的图书馆书籍管理和查询,以及读者的管理变得非常困难,使用计算机软件的图书管理系统来 ...

  9. Python图书管理系统(终章)

    文章目录 前言 总的项目布局 效果展示 全部代码 总结          前言    上次写了用MySQL完成数据存储的图书管理系统, 这次我将把各个模块划分为系统的各个功能,通过flask框架与前端 ...

最新文章

  1. 关于Hibernate中No row with the given identifier exists问题的原因及解决
  2. 内核打上yaffs2补丁遇到的问题
  3. c语言ascii码表数字,求教!我想显示数字但是现在显示的却是数字在ASCII码中对应的符...
  4. mybatis的Sql语句打印
  5. bfc和haslayout
  6. 人脸认证源码faceIdentify
  7. 2018年4月13日_Java的最新发展– 2018年4月下旬
  8. angular element()
  9. 如何设置PP视频允许PPAP驻留
  10. 影子卫士和影子系统哪个好用_影子系统是什么?会损害电脑硬盘吗?
  11. mysql中的事物处理
  12. 2015软件测试面试题第三篇
  13. python new 干什么用_详解Python中的__new__()方法的使用
  14. XShell「6.0.0111」已激活授权绿色版v2
  15. 时差怎么理解_懂的人自然懂,不懂的人再多解释也有时差,故事只能说给懂的人听...
  16. c语言期末网上考试题目回岔开吗,C语言期末考试题目.doc
  17. 使用openlayers加载地图行政区域(结合百度云地图)
  18. matplotlib设置颜色、标记、线条,让你的图像更加丰富
  19. 随机验证码生成(生成一个含有n位随机数字的字符串)
  20. [置顶]乔布斯的斯坦福演讲(双语)

热门文章

  1. Redis布隆过滤器
  2. leetcode 230. Kth Smallest Element in a BST | 230. 二叉搜索树中第K小的元素(Java)
  3. java高级用法之:JNA类型映射应该注意的问题
  4. 怎么在java中创建一个自定义的collector
  5. io_uring设计理念及使用方式总结
  6. 分布式键值系统Amazon Dynamo简介
  7. Leet Code OJ 388. Longest Absolute File Path [Difficulty: Medium]
  8. MySQL(七)联结表
  9. 【附全部代码+图片】使用HTML5+CSS3绘制HTML5的logo——Web前端系列学习笔记
  10. 【解析】Alice and Bob_24行代码AC