Maison  >  Article  >  développement back-end  >  Explication détaillée d'exemples d'opérations de base de données et de fichiers SQLite d'exploitation Python

Explication détaillée d'exemples d'opérations de base de données et de fichiers SQLite d'exploitation Python

黄舟
黄舟original
2017-09-23 11:28:172052parcourir

Cet article vous présente principalement les informations pertinentes sur l'utilisation de Python pour faire fonctionner les opérations de base de données et de fichiers SQLite. L'article le présente en détail à travers un exemple de code. Il a une certaine valeur d'apprentissage de référence pour les études ou le travail de tous les amis qui en ont besoin. Apprenons avec l'éditeur ci-dessous.

Préface

J'ai récemment rencontré un besoin au travail, qui consiste à supprimer des fichiers sans nom de fichier stocké dans les données SQLite. , j'ai décidé d'utiliser python. J'ai donc passé une journée et demie à l'étudier et j'ai écrit un petit exemple dont je n'en dirai pas plus ci-dessous. Les amis intéressés peuvent jeter un œil à l'introduction détaillée.

Télécharger le code directement

Package de fichiers d'en-tête à utiliser


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

Définir les variables d'enregistrement


#记录所文件数
sumCount=0;
#记录留存文件数
count=0;
#记录删除文件数
delCount=0;
#定义存储遍历所有文件数组
delList = []


#文件存储路径
delDir = "/Users/liudengtan/Desktop/testFile/"
#获取路径下所有文件
delList = os.listdir(delDir)
#打开连接数据库
conn = sqlite3.connect('images.db')
print "开始处理...";

Comparez tous les fichiers du répertoire de fichiers avec ceux de la base de données. Si le fichier est dans les données, conservez-le, sinon supprimez le fichier


#遍历
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;

<.>Résumé

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn