import os # 1.切換路徑============= d = os.getcwd() #獲取當前的工作路徑 os.chdir('D:\\')#目錄的切換 print(os.getcwd()) # (切換過去怎么回來呢?再chdir一下就回來了) os.chdir(d) print(os.getcwd()) # 2.執行系統命令============= # system和popen都是執行系統命令的,但是popen比較好用,因為它有返回值 os.system('dir') #顯示的是gbk的編碼, # 解決system亂碼的方法 ret = os.popen('dir') #popen是有返回值的,而且自己轉碼了 print(ret.read()) # 3.創建文件夾=和創建文件========== os.mkdir('temp') #生成一個文件夾,,只能生成一個 os.mkdir(r'temp2\inner') #這樣就報錯了 os.makedirs(r'temp1\inner',exist_ok=True) #創建多級目錄 os.makedirs(r'temp1\inner\inner2',exist_ok=True) #創建多級目錄 # 那么如果文件夾已經存在了,就報錯了,那我如果不想 # 讓報錯(就是假如存在,就不創建也不報錯),那么就加上exist_ok=True # 創建文件 f = open(r'temp1\inner\file','w') f.close() # 4.======重命名文件夾===== os.rename(r'temp1\inner\inner2','temp1\inner\haiyan') # 5.=====刪除文件夾和刪除文件========= # 先刪文件, os.remove(r'temp1\inner\file') # 再刪文件夾 os.removedirs(r'temp1\inner\haiyan') #刪除一個文件夾的時候,如果上一級的文件夾是空的,就一並刪除了。以此類推 os.rmdir((r'temp1\inner') )#只刪除一個文件夾 # 6.子目錄======== print(os.listdir(os.getcwd())) #打印當前目錄下的目錄 print(os.walk(os.getcwd())) #<generator object walk at 0x00000000021C6728> ret = os.walk(os.getcwd()) #拿到的東西比較多,如果你關心子目錄下的東西,就用walk print(list(ret)) # 7.====獲取文件或者目錄的信息的結構說明======== print(os.stat('temp')) # st_atime:上次訪問的時間 # st_mtime:最后一次修改的時間 # st_ctime:最新的更新時間 print(os.sep) # 打印的是\ print(os.getcwd()) file_path = '%s%s%s'%(os.getcwd(),os.sep,'filename') #拼接一個路徑(方式一) print(file_path) print(os.path.join(os.getcwd(),'filename'))#拼接一個路徑(方式二) # 8.====字符串指示當前使用平台 print(os.name) #如果是win,則打印的是nt 如果是,linux,打印poxis # 應用場景:當你輸入命令的時候,要判斷是win系統還是 linux系統。就可以用 # os.name去判斷了 # 9.===獲取系統環境變量===== print(os.environ) # 10.路徑相關的======= print(os.path.abspath('namedtuple.py')) print(os.path.dirname(os.path.abspath('namedtuple.py'))) print(os.path.dirname(os.path.dirname(os.path.abspath('namedtuple.py')))) print(os.path.exists(os.path.abspath('namedtuple.py')))