亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

python操作SQLite數(shù)據(jù)庫和文件操作

dingda / 2369人閱讀

摘要:最近遇到一個需求,就是要把數(shù)據(jù)中沒有存儲的文件名的文件刪除掉,想來想去還是決定用。所以也就花了一天半的時間學(xué)習(xí)了下,隨手寫了個小例子。

最近遇到一個需求,就是要把SQLite數(shù)據(jù)中沒有存儲的文件名的文件刪除掉,想來想去還是決定用python。所以也就花了一天半的時間學(xué)習(xí)了下,隨手寫了個小例子。
直接上代碼

要用到的頭文件包

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

定義記錄變量

#記錄所文件數(shù)
sumCount=0;
#記錄留存文件數(shù)
count=0;
#記錄刪除文件數(shù)
delCount=0;
#定義存儲遍歷所有文件數(shù)組
delList = []
#文件存儲路徑
delDir = "/Users/liudengtan/Desktop/testFile/"
#獲取路徑下所有文件
delList = os.listdir(delDir)
#打開連接數(shù)據(jù)庫
conn = sqlite3.connect("images.db")
print "開始處理...";

把文件目錄下的所有文件與數(shù)據(jù)庫的存的對比,如果文件在數(shù)據(jù)中,就存留,否則刪除文件

#遍歷
for f in delList:
    #獲取到文件路徑
    filePath = os.path.join(delDir, f)
    if os.path.isfile(filePath):
        sumCount=sumCount+1
       #將文件全路徑中存儲路徑替換,只留文件名
        fileName=filePath.replace(delDir,"")
        #數(shù)據(jù)庫查看當(dāng)前文件名是否存在
        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;

#關(guān)閉數(shù)據(jù)庫
conn.close()
print "處里結(jié)束:";
print "所有文件總數(shù) : ",sumCount;
print "刪除文件數(shù) : ",delCount;

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/40849.html

相關(guān)文章

  • 通過demo學(xué)習(xí)OpenStack開發(fā)所需的基礎(chǔ)知識 -- 數(shù)據(jù)庫(2)

    摘要:在實際項目中,這么做肯定是不行的實際項目中不會使用內(nèi)存數(shù)據(jù)庫,這種數(shù)據(jù)庫一般只是在單元測試中使用。接下來,我們將會了解中單元測試的相關(guān)知識。 在上一篇文章,我們介紹了SQLAlchemy的基本概念,也介紹了基本的使用流程。本文我們結(jié)合webdemo這個項目來介紹如何在項目中使用SQLAlchemy。另外,我們還會介紹數(shù)據(jù)庫版本管理的概念和實踐,這也是OpenStack每個項目都需要做的...

    mingzhong 評論0 收藏0
  • sqlite3使用sqlite2創(chuàng)建的數(shù)據(jù)庫

    摘要:問題用創(chuàng)建了一個數(shù)據(jù)庫。會得到大魔法師人族水元素暴風(fēng)雪輝煌光環(huán)時空傳送山丘之王人族風(fēng)暴之錘雷霆一擊重?fù)籼焐裣路惭Х◣熑俗逖讚舴胖鹞Щ瘌P凰圣騎士人族圣光圣盾神圣光環(huán)復(fù)活但是用通過操作的時候會報錯。我想也許是和創(chuàng)建的數(shù)據(jù)庫格式不同造成的。 問題 用 sqlite 2.8.17 創(chuàng)建了一個數(shù)據(jù)庫 heroes.db。其中創(chuàng)建了一個表 heroes,這張表中存儲的是魔獸爭霸中英雄的技能數(shù)據(jù)...

    shiyang6017 評論0 收藏0
  • Flask 插件系列 - Flask-SQLAlchemy

    摘要:程序中最常用的莫過于關(guān)系型數(shù)據(jù)庫了,也稱數(shù)據(jù)庫。對象是類的實例,表示程序使用的數(shù)據(jù)庫。本文由發(fā)表于個人博客,采用自由轉(zhuǎn)載保持署名非商用禁止演繹協(xié)議發(fā)布。非商業(yè)轉(zhuǎn)載請注明作者及出處。本文標(biāo)題為插件系列本文鏈接為更多閱讀 簡介 Web 開發(fā)中,一個重要的組成部分便是數(shù)據(jù)庫了。Web 程序中最常用的莫過于關(guān)系型數(shù)據(jù)庫了,也稱 SQL 數(shù)據(jù)庫。另外,文檔數(shù)據(jù)庫(如 mongodb)、鍵值對數(shù)據(jù)...

    LoftySoul 評論0 收藏0
  • Python信息采集器使用輕量級關(guān)系型數(shù)據(jù)庫SQLite

    摘要:,引言自帶一個輕量級的關(guān)系型數(shù)據(jù)庫。作為后端數(shù)據(jù)庫,可以搭配建網(wǎng)站,或者為網(wǎng)絡(luò)爬蟲存儲數(shù)據(jù)。在一些場景下,網(wǎng)絡(luò)爬蟲可以使用存儲采集到的網(wǎng)頁信息。爬蟲打數(shù)機(jī)將在版本支持,不妨想想一下網(wǎng)絡(luò)爬蟲與打數(shù)機(jī)連接在一起會怎樣。 showImg(https://segmentfault.com/img/bVyUfA); 1,引言 Python自帶一個輕量級的關(guān)系型數(shù)據(jù)庫SQLite。這一數(shù)據(jù)庫使用S...

    loonggg 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<