在Python的os模塊中,有兩個常用的函數,即cdw()和dir()函數。這兩個函數可以方便地管理目錄和文件。
一、cdw() 函數
cdw()函數的功能是改變當前工作目錄,其參數為新的工作目錄。在進行目錄操作時,需要定位所在的目錄,進而進行文件操作。cdw()函數的作用是改變所在的目錄,方便進行文件操作。
下面是一個cdw()函數的例子:
import os # 打印當前工作目錄 print("當前工作目錄: %s" % os.getcwd()) # 改變當前工作目錄到 "D:\mydir" os.chdir("D:\mydir") # 再次打印當前工作目錄 print("當前工作目錄: %s" % os.getcwd())
運行結果如下:
當前工作目錄: D:\Python 當前工作目錄: D:\mydir
可以看到,先用os.getcwd()函數輸出了當前工作目錄,然後用os.chdir()函數改變了工作目錄,並且再次用os.getcwd()函數查詢了工作目錄。可以看到工作目錄已經成功改變。
二、dir() 函數
dir()函數可以返回指定目錄下的文件列表,其中包括文件夾,子文件夾內的文件也會被列出來。
下面是dir()函數的例子:
import os # 列出當前目錄下的所有文件和目錄 print("\n列出當前目錄下的文件和目錄:") print(os.listdir("./")) # 列出D盤下的所有目錄、文件和子目錄下的內容 print("\n列出D盤下的所有目錄、文件和子目錄下的內容:") for file in os.listdir("D:/"): print(file)
運行結果如下:
列出當前目錄下的文件和目錄: ['file1.txt', 'file2.txt', 'mydir'] 列出D盤下的所有目錄、文件和子目錄下的內容: $Recycle.Bin A B bootmgr BOOTNXT Documents and Settings hiberfil.sys Intel MyDrivers IntelCOM MSOCache pagefile.sys PerfLogs Program Files Program Files (x86) Python37-32 Recovery swapfile.sys System Volume Information test Test.asm Update Windows Xunlei hiberfil.sys
上面的例子中使用os.listdir()列出了當前目錄下的所有文件和目錄。另外,可以使用for循環輸出特定目錄下的所有目錄、文件和子目錄的內容。
三、在實際中的應用
os模塊的cdw()和dir()函數用起來非常方便。在項目中使用這兩個函數能夠方便地進行目錄操作,為文件的讀寫提供了方便。
例如,在AI模型的訓練過程中,往往需要從指定目錄中讀取相關的數據文件。使用os模塊的dir()函數可以快速列出所需文件,方便讀取。
另外,在進行大規模數據處理時,有時需要需要在指定目錄下創建新的文件夾,方便存儲處理結果。此時使用os模塊的cdw()函數可以快速切換到指定目錄,並使用os.mkdir()函數創建新的文件夾。
代碼示例:
下面是一個具體的代碼示例,在指定目錄下創建新的文件夾並在新的文件夾下寫入文件。
import os # 設定工作目錄 os.chdir("D:\data") # 創建新文件夾 os.mkdir("results") # 切換到新文件夾 os.chdir("D:\data\results") # 將字符串寫入新文件 with open("result.txt", 'w') as f: f.write("測試結果")
以上代碼先使用os.chdir()函數改變工作目錄到指定目錄,然後使用os.mkdir()函數創建新的文件夾。接着使用os.chdir()函數切換到新的文件夾,最後使用open函數在新文件夾下創建文件並寫入內容。可以看到,os模塊的使用非常方便,能夠滿足各種文件操作的需求。
結論
在Python的os模塊中,cdw()和dir()函數是兩個常用的函數,能夠方便地進行目錄操作,可以方便地改變工作目錄、列出指定目錄下的所有文件。在實際開發中,os模塊的這兩個函數能夠方便地進行文件操作,為數據處理、模型訓練等提供了便利。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/291097.html