利用python操作SQLite数据库及文件操作详解


Posted in Python onSeptember 22, 2017

前言

最近在工作中遇到一个需求,就是要把SQLite数据中没有存储的文件名的文件删除掉,想来想去还是决定用python。所以也就花了一天半的时间学习了下,随手写了个小例子,下面话不多说了,感兴趣的朋友们一起来看看详细的介绍吧。

直接上代码

要用到的头文件包

#coding=utf-8
#!/usr/bin/python
#!/usr/bin/env python
import os
import shutil
import sqlite3

定义记录变量

#记录所文件数
sumCount=0;
#记录留存文件数
count=0;
#记录删除文件数
delCount=0;
#定义存储遍历所有文件数组
delList = []
#文件存储路径
delDir = "/Users/liudengtan/Desktop/testFile/"
#获取路径下所有文件
delList = os.listdir(delDir)
#打开连接数据库
conn = sqlite3.connect('images.db')
print "开始处理...";

把文件目录下的所有文件与数据库的存的对比,如果文件在数据中,就存留,否则删除文件

#遍历
for f in delList:
 #获取到文件路径
 filePath = os.path.join(delDir, f)
 if os.path.isfile(filePath):
  sumCount=sumCount+1
  #将文件全路径中存储路径替换,只留文件名
  fileName=filePath.replace(delDir,'')
  #数据库查看当前文件名是否存在
  cursor = conn.execute("SELECT image FROM '表名' where image=(?)",(fileName))
  res = cursor.fetchall()
  #条件判断>0文件存在
  if len(res) > 0:
   count = count + 1;
  else:#文件不存在将其删除
   if os.path.isfile(delDir + fileName):
    #删除文件操作
    os.remove(delDir + fileName)
    print delDir + fileName + " 删除!"
   delCount = delCount + 1;

#关闭数据库
conn.close()
print "处里结束:";
print "所有文件总数 : ",sumCount;
print "删除文件数 : ",delCount;

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
插入排序_Python与PHP的实现版(推荐)
May 11 Python
Python实现时钟显示效果思路详解
Apr 11 Python
python实现两个经纬度点之间的距离和方位角的方法
Jul 05 Python
python随机生成库faker库api实例详解
Nov 28 Python
python如何使用jt400.jar包代码实例
Dec 20 Python
Python urlopen()和urlretrieve()用法解析
Jan 07 Python
Python关于反射的实例代码分享
Feb 20 Python
python使用隐式循环快速求和的实现示例
Sep 11 Python
Selenium Webdriver元素定位的八种常用方式(小结)
Jan 13 Python
Pytorch实现图像识别之数字识别(附详细注释)
May 11 Python
Python竟然能剪辑视频
May 25 Python
Python 详解通过Scrapy框架实现爬取CSDN全站热榜标题热词流程
Nov 11 Python
Python正则表达式知识汇总
Sep 22 #Python
python3实现全角和半角字符转换的方法示例
Sep 21 #Python
python实现二分查找算法
Sep 21 #Python
分享给Python新手们的几道简单练习题
Sep 21 #Python
python验证码识别的示例代码
Sep 21 #Python
Python优先队列实现方法示例
Sep 21 #Python
python虚拟环境virtualenv的安装与使用
Sep 21 #Python
You might like
asp和php下textarea提交大量数据发生丢失的解决方法
2008/01/20 PHP
php cookie 登录验证示例代码
2009/03/16 PHP
分割GBK中文遭遇乱码的解决方法
2013/08/09 PHP
JavaScript获取和设置CheckBox状态的简单方法
2013/07/05 Javascript
js读写cookie实现一个底部广告浮层效果的两种方法
2013/12/29 Javascript
JavaScript面向对象的实现方法小结
2015/04/14 Javascript
JSON相关知识汇总
2015/07/03 Javascript
基于jquery实现省市区三级联动效果
2015/12/25 Javascript
BootStrap制作导航条实例代码
2016/05/06 Javascript
有关jQuery中parent()和siblings()的小问题
2016/06/01 Javascript
jQuery四种选择器使用及示例
2016/06/05 Javascript
第二篇Bootstrap起步
2016/06/21 Javascript
JavaScript中访问id对象 属性的方式访问属性(实例代码)
2016/10/28 Javascript
[原创]javascript typeof id==='string'?document.getElementById(id):id解释
2016/11/02 Javascript
JQuery和HTML5 Canvas实现弹幕效果
2017/01/04 Javascript
vue2.0中click点击当前li实现动态切换class
2017/06/21 Javascript
jquery中ajax请求后台数据成功后既不执行success也不执行error的完美解决方法
2017/12/24 jQuery
浅谈Vue页面级缓存解决方案feb-alive(上)
2019/04/14 Javascript
微信小程序自定义头部导航栏和导航栏背景图片 navigationStyle问题
2019/07/26 Javascript
JS实现百度搜索框
2021/02/25 Javascript
Python for Informatics 第11章 正则表达式(一)
2016/04/21 Python
快速入手Python字符编码
2016/08/03 Python
微信跳一跳python自动代码解读1.0
2018/01/12 Python
浅析python实现scrapy定时执行爬虫
2018/03/04 Python
Python安装whl文件过程图解
2020/02/18 Python
django正续或者倒序查库实例
2020/05/19 Python
python 决策树算法的实现
2020/10/09 Python
CSS3实现DIV圆角效果完整代码
2012/10/10 HTML / CSS
Shell如何接收变量输入
2012/09/24 面试题
如何写一封打动人心的求职信
2014/02/17 职场文书
一体化教学实施方案
2014/05/10 职场文书
道德演讲稿
2014/05/21 职场文书
2015年保险业务员工作总结
2015/05/27 职场文书
学习十八大的感悟
2015/08/11 职场文书
Web前端:CSS最强总结 附详细代码
2021/03/31 HTML / CSS
详解TypeScript的基础类型
2022/02/18 Javascript