1. 程式人生 > >Python3---os及os.path模組基礎知識全總結+難點詳解

Python3---os及os.path模組基礎知識全總結+難點詳解

Python3 os模組:

             格式: import os

             基礎知識:1.os.name    檢視本機作業系統  nt--windows  posix---linux/unix/mac
                               2.os.uname() 檢視作業系統詳細資訊,windows不支援這個功能,會報錯
                               3.os.environ  獲取作業系統中環境變數的資訊
                               4.os.environ.get('')  檢視指定的環境變數資訊 例:os.environ.get('PATH') 檢視PATH  
                               5.os.getcwd()檢視你這個列印語句所在py檔案的絕對路徑  
                               6.os.listdir() 獲取指定路徑下所有的檔案資訊,不能深層獲取(到改成即止)
                               注意:絕對路徑和相對路徑是有區別的。一般絕對路徑就是具體到檔案所在的碟符和資料夾
                                          相對路徑就只會列印該檔案在那個資料夾下。
                               7.os.mkdir('')在你列印語句所在的檔案下下建立一個新的資料夾,括號內為要建立的資料夾的名字
                                  也可在你指定的位置建立一個資料夾,具體做法如下:

import os  #匯入os模組
path1=r'C:\Users\Administrator\Desktop\要建立的資料夾名字'  #轉義字元r+'路徑'
os.mkdir(path1)

                                  也可建立多層資料夾:
 

import os
path1=r'C:\Users\Administrator\Desktop\建立的資料夾\建立的資料夾'
os.makedir(path1) #在指定目錄下建立多層資料夾 注意多層用的是makedir  一層用的是mkdir

                                8.os.removedirs() 刪除指定路徑下的多層資料夾,用法和建立相同
                                9.os.rmdir('')刪除指定目錄下的資料夾  例:os.rmdir('D:\\222')
                              10.os.renames('路徑+old名','路徑+new名')重新命名資料夾 例:os.renames('D:\\111','D:\\222')
                              11.os.remove()刪除指定目錄下的檔案 是檔案而不是資料夾 例:os.remove('D:\\111.txt')
                  (或許有一部分os模組功能沒有列出,你可以自己嘗試點出功能然後挨個檢視底層,通過底層學習功能作用)

Python3 os.path模組:

             格式:import os.path
             基礎知識:1.os.path.abspath(',') 獲取當前列印語句py檔案的絕對路徑


                               2.拼接路徑
                                  path1=r'a\b'
                                  path2=r'c\d'
                                  path3=os.path.join(path1,path2)
                                  print(path3)


                               3.拆分路徑
                                  path4=r'a\b\c\d.txt'
                                  print(os.path.split(path4))括號內寫拆分路徑 就是把當前檔案路徑與前邊的路徑拆分開


                               4.拆除副檔名
                                  print(os.path.splitext(path4))要是沒有副檔名 則報錯  有則拆除副檔名


                               5.檢測是不是資料夾(資料夾必須真實存在)
                                  path5=r'真實資料夾路徑'
                                  print(os.path.isdir(path5))


                               6.檢測是不是檔案(檔案必須真實存在)
                                  path6=r'真實檔案路徑'
                                  print(os.path.isfile(path6))


                               7.檢測是否有這個路徑
                                  print(os.path.exists())


                               8.獲取檔案大小 (位元組)
                                  print(os.path.getsize())


                               9.獲取檔案相對路徑
                                  print(os.path.dirname())


                             10.獲取檔案絕對路徑
                                  print(os.path.basename())

練習題:獲取指定資料夾下所有的檔案,需要深層獲取

              思路:1.寫好路徑
                         2.獲取當前目錄下所有檔案
                         3.判斷所有檔案是資料夾還是檔案
                         4.如果是檔案就輸出,是資料夾繼續獲取
 

import os
import os.path
path=r'C:\Users\Administrator\Desktop\111'
def aaa(path):
    str1 = os.listdir(path)
    for i in str1:
        str2 = os.path.join(path, i)
        if os.path.isfile(str2) == True:
            print(i)
        else:
            aaa(str2)
aaa(path)