Python数据库小程序源代码


Posted in Python onSeptember 15, 2019

源代码:

# dict1 是 字典 , 用来对应相应元素的下标,我们将文件转成列表,对应的也就是文件的下标,通过下标来找文件元素
dict1 = {'sort':0 , 'name':1 ,'age':2 ,'phone':3 ,'job':4 }
#将最后需要打印的信息转成列表的形式
def p_message(m1):
  if '*' in m1:
    m1 = dict1.keys()
    return m1
  m1 = m1.split(',')
  for i in range(len(m1)):
    m1[i] =m1[i].strip()
  return m1
#遍历文件信息,将其转化成列表的形式
#将函数转化成生成器,好处是不用一次将文件信息全部传入内存,而是用多少传多少
def op_file(m2):
  m2 = m2.strip()
  with open(m2 ,encoding='utf=8')as f:
    for line in f:
      line = line.strip()
      line = line.split(',')
      yield line

#进行条件筛选
def choose(pp1 ,m3):
  lis = []
  m3 = m3.strip()
  if '>' in m3:
    c1 ,c2 = m3.split('>')
    c1 = c1.strip()
    c2 = c2.strip()
    g = op_file(m2)
    for line_lis in g:
      if int(line_lis[dict1[c1]]) > int(c2):
        li = []
        for l_list in pp1:
          li.append(line_lis[dict1[l_list]])
        lis.append(li)
    for i in lis:
      print(i)
  if '<' in m3:
    c1,c2 = m3.split('<')
    c1 = c1.strip()
    c2 = c2.strip()
    g = op_file(m2)
    for line_lis in g:
      if int(line_lis[dict1[c1]]) < int(c2):
        li = []
        for l_list in pp1:
          li.append(line_lis[dict1[l_list]])
        lis.append(li)
    for i in lis:
      print(i)
  if '=' in m3:
    c1, c2 = m3.split('=')
    c1 = c1.strip()
    c2 = c2.strip()
    g = op_file(m2)
    for line_lis in g:
      if c2 in line_lis[dict1[c1]]:
        li = []
        for l_list in pp1:
          li.append(line_lis[dict1[l_list]])
        lis.append(li)
    for i in lis:
      print(i)
#分析输入的条件信息
while 1:
  message = input('>>>')
  # message = 'select name ,age from info where age > 22 '
  # m1 : 我们所要最后打印的信息 m2 : 文件名 m3 : 筛选条件
  m1 , m3 = message.split('where')
  m1 , m2 = m1.split('from')
  m1 = m1.replace('select',' ').strip()

  #pp1 是 修改完的m1
  pp1 = p_message(m1)
  op_file(m2)
  choose(pp1 ,m3)

文件内容:

1,Alex,22,13651054608,IT
2,Egon,23,13304320533,Tearcher
3,nezha,25,1333235322,IT

总结

以上所述是小编给大家介绍的Python数据库小程序源代码,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Python 相关文章推荐
Python 调用VC++的动态链接库(DLL)
Sep 06 Python
Python使用shelve模块实现简单数据存储的方法
May 20 Python
Pycharm学习教程(5) Python快捷键相关设置
May 03 Python
Python使用asyncio包处理并发详解
Sep 09 Python
基于python内置函数与匿名函数详解
Jan 09 Python
python 生成图形验证码的方法示例
Nov 11 Python
Python中IP地址处理IPy模块的方法
Aug 16 Python
Python3 Tkinkter + SQLite实现登录和注册界面
Nov 19 Python
Pyecharts绘制全球流向图的示例代码
Jan 08 Python
基于Python脚本实现邮件报警功能
May 20 Python
浅谈keras中loss与val_loss的关系
Jun 22 Python
python requests库的使用
Jan 06 Python
python中树与树的表示知识点总结
Sep 14 #Python
python树的同构学习笔记
Sep 14 #Python
python图形绘制奥运五环实例讲解
Sep 14 #Python
python列表插入append(), extend(), insert()用法详解
Sep 14 #Python
postman传递当前时间戳实例详解
Sep 14 #Python
Python 经典算法100及解析(小结)
Sep 13 #Python
python中如何实现将数据分成训练集与测试集的方法
Sep 13 #Python
You might like
php array_pop()数组函数将数组最后一个单元弹出(出栈)
2011/07/12 PHP
对于ThinkPHP框架早期版本的一个SQL注入漏洞详细分析
2014/07/04 PHP
URL编码转换,escape() encodeURI() encodeURIComponent()
2006/12/27 Javascript
ASP.NET jQuery 实例10 动态修改hyperlink的URL值
2012/02/03 Javascript
深入理解JavaScript系列(16) 闭包(Closures)
2012/04/12 Javascript
jQuery实现的指纹扫描效果实例(附演示与demo源码下载)
2016/01/26 Javascript
原生js封装自定义滚动条
2017/03/24 Javascript
Spring Boot/VUE中路由传递参数的实现代码
2018/03/02 Javascript
JS遍历DOM文档树的方法实例详解
2018/04/03 Javascript
深入浅析Vue 中 ref 的使用
2019/04/29 Javascript
一文了解vue-router之hash模式和history模式
2019/05/31 Javascript
[01:29:46]DOTA2上海特级锦标赛C组资格赛#1 OG VS LGD第二局
2016/02/27 DOTA
用Python编写简单的微博爬虫
2016/03/04 Python
python读取txt文件,去掉空格计算每行长度的方法
2018/12/20 Python
pandas.cut具体使用总结
2019/06/24 Python
python如何读取bin文件并下发串口
2019/07/05 Python
使用selenium和pyquery爬取京东商品列表过程解析
2019/08/15 Python
Python获取时间戳代码实例
2019/09/24 Python
Python SSL证书验证问题解决方案
2020/01/13 Python
tensorflow 实现打印pb模型的所有节点
2020/01/23 Python
python 两个一样的字符串用==结果为false问题的解决
2020/03/12 Python
Python3.x+pyqtgraph实现数据可视化教程
2020/03/14 Python
解决django xadmin主题不显示和只显示bootstrap2的问题
2020/03/30 Python
Soft Cotton捷克:来自爱琴海棉花的浴袍
2017/02/01 全球购物
中东奢侈品市场:Coveti
2019/05/12 全球购物
运动会跳远加油稿
2014/02/20 职场文书
《学会待客》教学反思
2014/02/22 职场文书
青年安全生产示范岗事迹材料
2014/05/04 职场文书
特教教师先进事迹
2014/05/21 职场文书
五心教育心得体会
2014/09/04 职场文书
党员民主评议总结
2014/10/20 职场文书
酒店办公室主任岗位职责
2015/04/01 职场文书
2016年会开场白台词
2015/06/01 职场文书
2019大学生暑期实习心得总结
2019/08/21 职场文书
python实现剪贴板的操作
2021/07/01 Python
MySQL数据库实验之 触发器和存储过程
2022/06/21 MySQL