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通过imaplib模块读取gmail里邮件的方法
May 08 Python
Python实现以时间换空间的缓存替换算法
Feb 19 Python
网站渗透常用Python小脚本查询同ip网站
May 08 Python
pycharm下打开、执行并调试scrapy爬虫程序的方法
Nov 29 Python
Numpy掩码式数组详解
Apr 17 Python
python得到单词模式的示例
Oct 15 Python
widows下安装pycurl并利用pycurl请求https地址的方法
Oct 15 Python
python在回调函数中获取返回值的方法
Feb 22 Python
python3常用的数据清洗方法(小结)
Oct 31 Python
django修改models重建数据库的操作
Mar 31 Python
python模拟斗地主发牌
Apr 22 Python
python的html标准库
Apr 29 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
基于Windows下Apache PHP5.3.1安装教程
2010/01/08 PHP
PHP 文件系统详解
2012/09/13 PHP
php漏洞之跨网站请求伪造与防止伪造方法
2013/08/15 PHP
ThinkPHP之M方法实例详解
2014/06/20 PHP
PHP计算百度地图两个GPS坐标之间距离的方法
2015/01/09 PHP
Yii实现简单分页的方法
2016/04/29 PHP
XHProf报告字段含义的解析
2016/05/17 PHP
神奇的7个jQuery 3D插件整理
2011/01/06 Javascript
js日历功能对象
2012/01/12 Javascript
如何获取JQUERY AJAX返回的JSON结果集实现代码
2012/12/10 Javascript
简单了解Backbone.js的Model模型以及View视图的源码
2016/02/14 Javascript
Bootstrap表单组件教程详解
2016/04/26 Javascript
JavaScript实现简单的星星评分效果
2017/05/18 Javascript
详解VUE 定义全局变量的几种实现方式
2017/06/01 Javascript
深入理解基于vue-cli的vuex配置
2017/07/24 Javascript
微信小程序简单实现form表单获取输入数据功能示例
2017/11/30 Javascript
微信小程序商品详情页的底部弹出框效果
2020/11/16 Javascript
JavaScript继承与多继承实例分析
2018/05/26 Javascript
element-ui 表格数据时间格式化的方法
2018/08/24 Javascript
Vue resource三种请求格式和万能测试地址
2018/09/26 Javascript
JS实现图片幻灯片效果代码实例
2020/05/21 Javascript
Python批量修改文本文件内容的方法
2016/04/29 Python
Python编程实现二叉树及七种遍历方法详解
2017/06/02 Python
分析运行中的 Python 进程详细解析
2019/06/22 Python
一篇文章弄懂Python中所有数组数据类型
2019/06/23 Python
Python Scrapy框架:通用爬虫之CrawlSpider用法简单示例
2020/04/11 Python
Needle & Thread官网:英国仙女品牌
2018/01/13 全球购物
美国领先的家庭健康检测试剂盒提供商:LetsGetChecked
2019/03/18 全球购物
易程科技软件测试笔试
2013/03/24 面试题
求职自荐信范文格式
2013/11/29 职场文书
应届中专生自荐书范文
2014/02/13 职场文书
大学生党员个人剖析材料
2014/10/08 职场文书
机关作风建设心得体会
2014/10/22 职场文书
财务统计员岗位职责
2015/04/14 职场文书
运动会广播稿200字
2015/08/19 职场文书
八年级物理教学反思
2016/02/19 职场文书