成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

這可能是最詳細(xì)的Python文件操作

阿羅 / 2048人閱讀

摘要:刪除刪除只能刪除文件,若為目錄則報(bào)錯(cuò)若文件正在使用,下會(huì)直接報(bào)錯(cuò),下會(huì)在目錄表中刪除記錄,但文件還在與一樣的作用刪除目錄,目錄必須為空,否則報(bào)錯(cuò)遞歸刪除空目錄刪除整個(gè)目錄不管此目錄下有多少目錄和文件新建新建新建文件夾,若倒數(shù)第二層文件夾不存

刪除
# ==================刪除==================
# 只能刪除文件,若為目錄則報(bào)錯(cuò)
# 若文件正在使用,Windows下會(huì)直接報(bào)錯(cuò),Linux下會(huì)在目錄表中刪除記錄,但文件還在
# 與os.unlink()一樣的作用
os.remove(r"C:UsersMicrosoftDesktop111.exe")

# 刪除目錄,目錄必須為空,否則報(bào)錯(cuò)OSError
os.rmdir(r"C:UsersMicrosoftDesktopaaa")
# 遞歸刪除空目錄
os.removedirs(r"C:UsersMicrosoftDesktop123")
# 刪除整個(gè)目錄(不管此目錄下有多少目錄和文件)
shutil.rmtree(r"C:UsersMicrosoftDesktopaaa")
# ======================================
新建
# ==================新建==================
# 新建文件夾,若倒數(shù)第二層文件夾不存在則會(huì)報(bào)錯(cuò)
os.mkdir(r"/home/python")
# 遞歸新建目錄,若文件夾存在則報(bào)錯(cuò)
os.makedirs(r"C:UsersMicrosoftDesktopaaa666777")
# ======================================
復(fù)制
# ==================復(fù)制==================
# 復(fù)制文件,不能復(fù)制文件夾
shutil.copyfile(r"D:pythonpy11.txt", r"D:pythonpy21.txt")
# 復(fù)制文件,與copyfile不同的是,第二個(gè)可以參數(shù)可以使用文件夾路徑
shutil.copy(r"D:pythonpy11.txt", r"D:pythonpy2")
# shutil.copy只復(fù)制文件內(nèi)容,copy2還復(fù)制了創(chuàng)建時(shí)間、修改時(shí)間等信息,
shutil.copy2(r"D:pythonpy11.txt", r"D:pythonpy2")
# 復(fù)制整個(gè)文件夾,若目標(biāo)目錄已存在,則會(huì)報(bào)錯(cuò)
shutil.copytree(r"D:pythonpy1", r"D:pythonpy3py1")
# ======================================
移動(dòng)
# ==================移動(dòng)====================
# 移動(dòng)文件或文件夾,可使用目錄樹形式
shutil.move(r"D:pythonpy1", r"D:pythonpy3py2")
# ========================================
重命名
# ==================重命名==================
# 重命名文件或目錄,但不能這樣:rename("/aaa/a.txt","/bbb/a.txt"),也不能同時(shí)重命名目錄和文件
os.rename(r"C:UsersMicrosoftDesktopaaa5",r"C:UsersMicrosoftDesktopbb6")
# 重命名目錄或文件
# 若同時(shí)重命名路徑和文件,則會(huì)新建路徑并將文件重命名后移動(dòng)到新目錄
# 如:os.renames("/aaa/b.txt","/bbb/c.txt"),則會(huì)在aaa同級(jí)目錄新建bbb目錄,并將b.txt重命名為c.txt后移動(dòng)到bbb目錄
os.renames(r"C:UsersMicrosoftDesktopaaa6",r"C:UsersMicrosoftDesktopaaa123")
# =======================================
路徑相關(guān)
# ==================路徑相關(guān)==================
# 獲取文件的完整路徑
os.path.abspath(r"script.py")
# 獲取完整路徑中的文件名,以下返回script.py,等價(jià)于os.path.split(path)[1]
os.path.basename(r"/home/python/script.py")
# 獲取文件的絕對(duì)路徑,參數(shù)也必須是全路徑,另:即使文件不存在也會(huì)正常返回,等價(jià)于os.path.split(path)[0]
os.path.dirname(r"/home/python/script.py")
# 獲取文件的文件名和擴(kuò)展名,以下返回:("script", ".py")
os.path.splitext(r"script.py")
# 獲取腳本運(yùn)行目錄
os.getcwd()
# 獲取目錄下文件列表,參數(shù)為空則為腳本運(yùn)行目錄,返回格式:["1.py","2.py"]
os.listdir(r"/home/python")
# 判斷文件或路徑是否存在
os.path.exists(r"/home/python")
# 判斷目標(biāo)是文件還是路徑
os.path.isdir(r"/home/python")
os.path.isfile(r"/home/python")
# =========================================
遍歷目錄

兩種方式:

os.walk()

os.listdir() 遞歸

os.walk
os.walk(top[, topdown=True[, onerror=None[, followlinks=False]]])

參數(shù)1:要遍歷的目錄

參數(shù)2:默認(rèn)True為廣度遍歷,F(xiàn)alse為深度遍歷

參數(shù)3:可空,callable 對(duì)象,當(dāng) walk 異常時(shí),會(huì)調(diào)用

參數(shù)4:可空,如果為 True,則會(huì)遍歷目錄下的快捷方式(linux 下是 symbolic link)實(shí)際所指的目錄(默認(rèn)關(guān)閉)

import os 

list_dirs = os.walk(rootDir) 
for root, dirs, files in list_dirs:
    # root 所指的是當(dāng)前正在遍歷的這個(gè)文件夾的本身的地址
    # dirs 是一個(gè)list,內(nèi)容是該文件夾中所有的目錄的名字(不包括子目錄)
    # files 同樣是list , 內(nèi)容是該文件夾中所有的文件(不包括子目錄)
    print("======")
    for d in dirs:
        # 只輸出遍歷文件夾名
        print(os.path.join(root, d))
    for f in files:
        # 只輸出遍歷的文件名
        print(os.path.join(root, f))
os.listdir遞歸
os.listdir(path)

參數(shù)1:目錄

返回path目錄下的文件夾名和文件名,并按字母順序排列

def Recursion(rootDir):
    for lists in os.listdir(rootDir):
        path = os.path.join(rootDir, lists)
        # 輸出文件名或文件夾名
        print(path)
        # 判斷是否為文件夾,如果是,則遞歸遍歷
        # 如果不是則為文件,可執(zhí)行具體邏輯
        if os.path.isdir(path):
            Recursion(path)
        else:
            pass
我的博客:花墨世界

公眾號(hào):花墨世界

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

轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/42922.html

相關(guān)文章

  • 可能是最詳細(xì)部署:Docker Registry企業(yè)級(jí)私有鏡像倉庫Harbor管理WEB UI

    摘要:私有倉庫是,并在中運(yùn)行。不要使用或?yàn)橹鳈C(jī)名注冊表服務(wù)需要由外部客戶端訪問或,默認(rèn)為用于訪問和令牌通知服務(wù)的協(xié)議。打開或關(guān)閉,默認(rèn)打開打開此屬性時(shí),準(zhǔn)備腳本創(chuàng)建私鑰和根證書,用于生成驗(yàn)證注冊表令牌。 上一篇文章搭建了一個(gè)具有基礎(chǔ)功能,權(quán)限認(rèn)證、TLS 的私有倉庫,但是Docker Registry 作為鏡像倉庫,連管理界面都沒有,甚至連一些運(yùn)維必備的功能都是缺失的,還有什么 Docker...

    沈儉 評(píng)論0 收藏0
  • 總結(jié):Python異常處理

    摘要:盡量使用內(nèi)置的異常處理語句來替換語句,比如語句,方法。以上是最簡單的重新拋出異常的做法,也是推薦的做法。除了包含所有的外還包含了,和三個(gè)異常。避免在語句塊中干一些沒意義的事情,捕獲異常也是需要成本的。 異常處理在任何一門編程語言里都是值得關(guān)注的一個(gè)話題,良好的異常處理可以讓你的程序更加健壯,清晰的錯(cuò)誤信息更能幫助你快速修復(fù)問題。在Python中,和不部分高級(jí)語言一樣,使用了try/ex...

    douzifly 評(píng)論0 收藏0
  • python編碼意義

    摘要:而他們的中文釋義,就是對(duì)新手的最大陷阱編碼。而碼,也就是美國信息交換標(biāo)準(zhǔn)碼,年發(fā)布,位字符編碼中影響最大的一種。 編碼,還是編碼! python2的直鉤——編碼異常 當(dāng)你用python打開一篇中文文檔,準(zhǔn)備讀取里面的數(shù)據(jù)開始實(shí)驗(yàn)...當(dāng)你處理好你的數(shù)據(jù),打算打印出易于閱讀的結(jié)果給boss檢查...甚至當(dāng)你剛剛開始編寫自己的代碼,就寫了一句話... text = 什么鬼 只要你開始運(yùn)行自...

    e10101 評(píng)論0 收藏0
  • Python解析郵件

    摘要:發(fā)送郵件好說,接收和下載郵件也好說。所以我們想要解析一封郵件把它拆成人能讀懂的標(biāo)題收發(fā)件人內(nèi)容附件等,就必須得理解這套協(xié)議。了解協(xié)議,其實(shí)主要就是了解郵件的嵌套結(jié)構(gòu)。另一種壓縮方式,需要用庫函數(shù)來解碼。 郵件的解析是個(gè)大課題,遠(yuǎn)超一般人的預(yù)期。它遠(yuǎn)比發(fā)送郵件和接收郵件要復(fù)雜的多的多。這就是為什么網(wǎng)上中文外文搜郵件的問題,絕大多數(shù)都是講發(fā)送的而講接收的很少。 發(fā)送郵件好說,接收和下載郵件...

    tracymac7 評(píng)論0 收藏0
  • 【小白+python+selenium庫+圖片爬取+反爬+資料】超詳細(xì)新手實(shí)現(xiàn)(01)webdriv

    摘要:且本小白也親身經(jīng)歷了整個(gè)從小白到爬蟲初入門的過程,因此就斗膽在上開一個(gè)欄目,以我的圖片爬蟲全實(shí)現(xiàn)過程為例,以期用更簡單清晰詳盡的方式來幫助更多小白應(yīng)對(duì)更大多數(shù)的爬蟲實(shí)際問題。 前言: 一個(gè)月前,博主在學(xué)過python(一年前)、會(huì)一點(diǎn)網(wǎng)絡(luò)(能按F12)的情況下,憑著熱血和興趣,開始了pyth...

    Half 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<