自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

你應(yīng)該知道的10個(gè)Python文件系統(tǒng)方法

開發(fā) 后端
大家可以編寫Python程序來與文件系統(tǒng)進(jìn)行交互,以完成一些很酷的工作。本文將重點(diǎn)介紹10個(gè)基本的os操作和shutil命令,這樣您就可以編寫腳本來自動(dòng)化與文件系統(tǒng)的交互。

大家可以編寫Python程序來與文件系統(tǒng)進(jìn)行交互,以完成一些很酷的工作。然而如何做到這一點(diǎn)并不總是非常清楚。本文將重點(diǎn)介紹10個(gè)基本的os操作和shutil命令,這樣您就可以編寫腳本來自動(dòng)化與文件系統(tǒng)的交互。os模塊是與操作系統(tǒng)交互的主要Python模塊。shutil模塊還包含高級(jí)文件操作。一般而言,您可以使用os創(chuàng)建目錄,但使用shutil移動(dòng)和復(fù)制它們。

文件系統(tǒng)有點(diǎn)像一個(gè)房子。假設(shè)你在大掃除,需要把一箱箱的筆記本從一個(gè)房間搬到另一個(gè)房間。

[[324727]]

這些方框就像目錄,里面是文件。文件就像檔案。你可以給他們進(jìn)行讀和寫也可以將它們放在目錄框中。

獲取信息

1. os.getcwd() 將當(dāng)前工作目錄路徑作為字符串獲取

等價(jià)于macOS/Linux系統(tǒng)的pwd命令

2. os.listdir() 以字符串列表的形式獲取當(dāng)前工作目錄的內(nèi)容

等價(jià)于macOS/Linux系統(tǒng)的ls命令

3. os.walk (“starting_directory_path”) 返回一個(gè)生成器,其中包含當(dāng)前目錄和所有子目錄中的目錄和文件的名稱和路徑信息

os.walk()創(chuàng)建一個(gè)生成器,它可以返回關(guān)于當(dāng)前目錄和子目錄的信息。它通過指定的起始目錄中的目錄工作。

os.walk()為它所遍歷的每個(gè)目錄返回以下項(xiàng):

  • 當(dāng)前目錄路徑為字符串
  • 當(dāng)前目錄中的子目錄名作為字符串
  • 列表當(dāng)前目錄中的文件名作為字符串列表

使用帶有for循環(huán)的os.walk()來遍歷目錄及其子目錄的內(nèi)容通常很有用。例如,下面的代碼將打印當(dāng)前工作目錄的目錄和子目錄中的所有文件。

  1. import os 
  2. cwd = os.getcwd() 
  3. for dir_path, dir_names, file_names in os.walk(cwd): 
  4.     for f in file_names: 
  5.         print(f) 

這就是我們獲取信息的方式,現(xiàn)在讓我們看看更改工作目錄或移動(dòng)、復(fù)制或刪除文件系統(tǒng)部分的命令。

改變事物

4. os.chdir("/absolute/or/relative/path")

等價(jià)于macOS/Linux系統(tǒng)的cd命令

此方法將當(dāng)前工作目錄更改為提供的絕對(duì)路徑或相對(duì)路徑。如果您的代碼隨后對(duì)文件系統(tǒng)做了其他更改,那么在使用try-except方法時(shí)處理任何拋出的異常都是一個(gè)好主意。否則,您可能正在刪除不想刪除的目錄或文件。

5. os.path.join()

os.path模塊有許多用于常見路徑名操作的有用方法。您可以使用它來查找關(guān)于目錄名和目錄名部分的信息。模塊還具有檢查文件或目錄是否存在的方法。join()的設(shè)計(jì)目的是通過將多個(gè)字符串連接到一個(gè)漂亮的文件路徑中,創(chuàng)建一個(gè)可以在大多數(shù)操作系統(tǒng)上工作的路徑。

基本上,如果您使用的是Unix或macOS系統(tǒng),os.path.join()在提供的每個(gè)字符串之間加上一個(gè)正斜杠(" / ")來創(chuàng)建路徑。如果操作系統(tǒng)需要“\”,那么join知道使用反斜杠。join()還向其他開發(fā)人員提供了創(chuàng)建路徑的明確信息。一定要使用它而不是手動(dòng)的字符串連接,以避免看起來像一個(gè)新手。

6. os.makedirs("dir1/dir2")

等價(jià)于macOS/Linux系統(tǒng)的mkdir -p命令

os.makedirs()創(chuàng)建目錄。mkdir()方法也創(chuàng)建目錄,但它不創(chuàng)建中間目錄。所以我建議您使用os.makedirs()。

7. shutil.copy2("source_file_path","destination_directory_path")

等價(jià)于macOS/Linux系統(tǒng)的cp命令

在Python中有許多方法可以復(fù)制文件和目錄。shutil.copy2()是一個(gè)很好的選擇,因?yàn)樗噲D盡可能多地保留源文件的元數(shù)據(jù)。

8. shutil.move("source_file","destination")

等價(jià)于macOS/Linux系統(tǒng)的mv命令

使用shutil.move()來更改文件的位置。

9. os.remove("my_file_path")

等價(jià)于macOS/Linux系統(tǒng)的rm命令

10. shutil.rmtree("my_directory_path")

等價(jià)于macOS/Linux系統(tǒng)的rm -rf命令

 

責(zé)任編輯:趙寧寧 來源: 今日頭條
相關(guān)推薦

2018-09-18 10:55:24

人工智能機(jī)器學(xué)習(xí)深度學(xué)習(xí)

2013-05-20 10:14:42

軟件工具項(xiàng)目工具開發(fā)工具

2018-12-20 14:28:45

程序員開源支付系統(tǒng)

2023-01-10 09:24:47

Python編程語言

2021-06-07 12:40:34

Python代碼陷阱

2013-12-02 10:10:35

Python工具庫

2022-04-28 08:41:53

JavaScript數(shù)組

2017-01-06 10:07:39

Linuxwindowsatime

2017-06-06 11:59:26

Docker工具容器

2024-11-12 14:56:07

2020-10-14 11:10:52

ES2020JavaScript前端

2020-03-12 09:19:55

前端開發(fā)Chrome

2024-08-06 11:40:57

2022-06-29 10:06:27

Webpack優(yōu)化技巧前端

2020-10-18 07:37:24

微前端框架前端

2020-10-23 19:50:15

ES2020Javascript1前端

2023-12-05 08:02:51

JavaScript字符串功能

2025-04-24 08:31:57

2011-03-25 15:56:58

2019-06-03 08:04:43

Apache服務(wù)器命令
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)