Python基礎之文件操作+複製文件目錄+統計目錄大小

open()打開文件

f =open("./file.text","r")  #只讀模式

f.read() #讀取全部  f.read(5) #讀取字符數  f.readline() #讀取一行  f.readlines() #讀取所有行

f =open("./file.text","w")  #覆蓋寫入模式,清空已有數據在寫入數據,當沒有次文件時自動創建

f =open("./file.text","a")  #添加寫入模式,在已有數據後繼續添加寫入數據,當沒有次文件時自動創建

rb/wb/ab 使用二進制數據操作,對圖片等文件進行操作,如不加b只能對文本文件進行操作

f.close()關閉文件

dir 查看當前目錄文件

. 當前目錄 .. 上一級目錄

 

os模塊

import os #導入os模塊

os.getcwd() #獲取當前工作目錄  os.chdir("path")  #修改當前工作目錄 

os.listdir() #默認獲取當前文件夾或指定路徑中的所有文件和文件夾組成的列表

os.mkdir("") #創建一個文件夾/目錄   rename("","")  #修改文件/文件夾名稱 

os.rmdir("path") #移除一個空文件夾/空目錄(有文件不能刪除,否則報錯) 

stat("path") #獲取文件相關信息   os.gettenv("") #獲取環境變量

exit() #退出當前執行命令,直接關閉當前操作

當前os模塊的值

os.curdir #獲取當前路徑  os.sep #獲取當前系統路徑分割符

os.path子模塊

os.path.exists("path") #獲取文件是否存在  os.path.abspath("path") #獲取文件夾下的文件絕對路徑 

os.path.basename("path") #獲取地址中的文件名 os.path.dirname(“path”) #獲取地址中路徑

os.path.join("","") #合併路徑  os.path.getsize("path") #獲取文件大小

os.path.isfile("") #判斷是否是個文件  os.path.isdir() #判斷是否是個目錄

 

#自定義文件複製函數

def CopyFile(varFile1,varFile2):

    

 

#自定義目錄複製函數

def CopyDir(varDir1,varDir2):

    dlist = os.liatdir(varDir1) #獲取需要複製目錄下的所有文件信息

    os.mkdir(varDir2) #新建一個目錄

    for vfile in dlist: #獲取目標文件的所有文件遍歷複製到新目錄下

        file1=os.path.join(varDir1,vfile ) 

        file2=os.path.join(varDir2,vfile )

        if os.path.isfile(file1): #判斷是否是文件

            CopyFile(file1,file2) #複製文件

        elif os.path.isdir(file1): #判斷是否是目錄

            CopyDir(file1,file2) #調用自己,複製次級目錄

 

#自定義統計目錄大小函數

def StatsSize(varDir):
    """
    統計目錄大小
    varDir:需要統計大小的目錄path
    返回值:目錄字節大小,int類型
    """
    filesize = 0
    pathlist = os.listdir(varDir) # 獲取目錄下所有路徑
    for v in pathlist:
        file1=os.path.join(varDir,v)
        if os.path.isfile(file1): #判斷是否是文件
            filesize+=os.path.getsize(file1) # 所有文件大小疊加
        elif os.path.isdir(file1): #判斷是否是目錄
            filesize+=StatsSize(file1) #統計次級目錄,獲取次級目錄文件大小
    return filesize

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章