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中使用logging模块打印log日志详解
Apr 05 Python
Python实现的Google IP 可用性检测脚本
Apr 23 Python
在Python中操作字典之fromkeys()方法的使用
May 21 Python
Python学生成绩管理系统简洁版
Apr 05 Python
python读取图片任意范围区域
Jan 23 Python
python控制nao机器人身体动作实例详解
Apr 29 Python
Python数据可视化实现正态分布(高斯分布)
Aug 21 Python
python实现文件的分割与合并
Aug 29 Python
Python使用matplotlib 画矩形的三种方式分析
Oct 31 Python
利用Python脚本批量生成SQL语句
Mar 04 Python
python实现图片素描效果
Sep 26 Python
Python+Selenium实现抖音、快手、B站、小红书、微视、百度好看视频、西瓜视频、微信视频号、搜狐视频、一点号、大风号、趣头条等短视频自动发布
Apr 13 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
DOTA2 无惧惊涛骇浪 昆卡大型水友攻略
2020/04/20 DOTA
PHP通用检测函数集合
2006/11/25 PHP
ThinkPHP项目分组配置方法分析
2016/03/23 PHP
jquery 页面全选框实践代码
2010/04/02 Javascript
JavaScript 布尔操作符解析  &amp;&amp; || !
2012/08/10 Javascript
javascript中RegExp保留小数点后几位数的方法分享
2013/08/13 Javascript
使用纯javascript实现经典扫雷游戏
2015/04/23 Javascript
js实现类似MSN提示的页面效果代码分享
2015/08/24 Javascript
JS实现超简洁网页title标题跑动闪烁提示效果代码
2015/10/23 Javascript
JS代码随机生成姓名、手机号、身份证号、银行卡号
2016/04/27 Javascript
分享10个优化代码的CSS和JavaScript工具
2016/05/11 Javascript
Vue 组件注册实例详解
2019/02/23 Javascript
纯javascript实现选择框的全选与反选功能
2019/04/08 Javascript
IDEA配置jQuery, $符号不再显示黄色波浪线的问题
2020/10/09 jQuery
[36:33]2018DOTA2亚洲邀请赛 4.3 突围赛 EG vs Newbee 第二场
2018/04/04 DOTA
python 控制语句
2011/11/03 Python
python实现媒体播放器功能
2018/02/11 Python
Python爬虫框架Scrapy实例代码
2018/03/04 Python
Python编写一个优美的下载器
2018/04/15 Python
Python 16进制与中文相互转换的实现方法
2018/07/09 Python
python使用numpy读取、保存txt数据的实例
2018/10/14 Python
浅谈python在提示符下使用open打开文件失败的原因及解决方法
2018/11/30 Python
如何使用python操作vmware
2019/07/27 Python
Python +Selenium解决图片验证码登录或注册问题(推荐)
2020/02/09 Python
Django的ListView超详细用法(含分页paginate)
2020/05/21 Python
Python爬虫UA伪装爬取的实例讲解
2021/02/19 Python
Speedo速比涛法国官方网站:泳衣、泳镜、泳帽、泳裤
2019/07/30 全球购物
如何估计一张表的大小(假设该表中有1万条数据)
2016/03/27 面试题
研究生自荐信
2013/10/09 职场文书
工作粗心大意检讨书
2014/09/18 职场文书
组织生活会发言材料
2014/12/15 职场文书
体育教师个人总结
2015/02/09 职场文书
2019年销售部季度工作计划3篇
2019/10/09 职场文书
mongodb的安装和开机自启动详细讲解
2021/08/02 MongoDB
Python 中的Sympy详细使用
2021/08/07 Python
如何用vue实现网页截图你知道吗
2021/11/17 Vue.js