/pythonPro

Primary LanguagePython

字典和列表实现手写数据库

  1. 在添加操作之前需要检验是否有建表
  2. 需要检查添加操作字段和值个数是否一一对应
  3. 需要检验输入的sql语句是否符合规范,语句前不能有空格,属性没有引号,字段的值如果是字符要用引号...
  4. 支持动态添加表格字段
  5. 支持建多张表进行操作
  6. 执行用sql语句进行操作
  7. 支持自动算出带score的分数列表和带weight的权重列表的加权平均,若新添加的列也带score和weight也会自动算入加权平均
  8. 支持按照用户输入的列(如按姓名排序或按加权排序等)来进行升序还是降序的排序
  9. 请尽量在Pycharm编译器中运行此程序,程序在cmd命令窗口运行界面显示不是很友好

技术描述

  1. 利用正则表达式匹配用户输入,判断用户要进行的操作,是创建、插入、修改、增加变量、删除数据还是退出程序
  2. 将表放在栈中,方便为扩展在不同表中来回切换进行数据操作做准备
  3. 给databaseByDictory设置一个列表fields为自己的属性来存储数据库的字段,这是允许程序给数据库中添加变量(字段)的基础
  4. 给databaseByDictory设置列表scoreColumn和列表weightColumn为自己的属性来存储自动扫描获取带score和weight字段的分数列表和权重列表,为加权平均值提供数据基础
  5. 给databaseByDictory设置一个变量id为自己的属性,为每条记录添加id值唯一标识这条记录
  6. 在数据库查询输出时,利用python的format对记录进行格式化

成果展示

建表、插入数据、查询数据

在这里插入图片描述

按照平均分降序排序

在这里插入图片描述 在这里插入图片描述