Python中OS對目錄的操作以及引用

xinhua發表於2021-03-06

路徑的獲取

對當前目錄的獲取

1 path = os.getcwd()
2 print("獲取到的當前目錄是:({})".format(path))

獲取當前檔案所在的絕對路徑

import os

path = os.path.realpath(__file__)
print("獲取到的當前路徑是:({})".format(path))

路徑的拼接,生成新的路徑

(以下兩種都可以) 方法一

import os
path = os.getcwd()+"/abc"
print("獲取到的當前目錄是:({})".format(path))

os.mkdir(path) #建立1個新目錄

方法二

 1 import os 
 2 
 3 new_path = os.path.join(os.getcwd(),"abc")
 4 print(new_path)
 5 os.mkdir(new_path)
 6 
 7 # 使用join拼接目錄新建時,需要確保最後一級之前的目錄都存在
 8 new_path = os.path.join(os.getcwd(),"abc","def")
 9 print(new_path)
10 os.mkdir(new_path)
11 
12 
13 # 上述可以寫成如下方法
14 new_path = os.path.join(os.getcwd(),"abc\def")
15 print(new_path)
16 os.mkdir(new_path)

判斷是檔案還是目錄

"""
isfile() 判斷的是檔案
isdir()  判斷的是目錄

"""

print (os.path.isfile(__file__))   返回值為布林值 true
print (os.path.isfile(os.getcwd()))   返回值為布林值 false
print (os.path.isdir(os.getcwd()))   返回值為布林值 Ture

# exists()判斷檔案是否存在
print(os.path.exists(os.path.realpath(__file__)))   返回值為布林值 Ture

 

列出當前路徑下所有的目錄和檔案

print(os.listdir(os.getcwd()))

學習後的小練習

給定一個路徑,請列印出所有的路徑(直到這個路徑下沒有目錄為止)

思路:遞迴函式

"""
大致思路和程式碼如下
"""

import os

for  path in os.listdir(os.getcwd()):
    if os.path.isdir(path):
        os.listdir(os.path.join(os.getcwd(), path))
        print("({})還需要進一步處理".format(path))
    else:
        print("已經最後一級",os.path.join(os.getcwd(), path))

 

相關文章