標籤:res top error: 規範 error comm efault lex ase
1 #!/usr/bin/python 2 #-*- encoding:UTF-8 -*- 3 # ___Author___: oracle 4 # ___Date____: 2018/5/17上午 09:04 5 # ___File_Name: os模組 6 # ___project_name: Python_Lesson 7 8 import sys,time,os 9 ‘‘‘os模組作用是程式與作業系統的互動,提供了訪問作業系統底層的介面 10 sys模組作用是python解譯器與程式的互動,提供了一系列函數和變數,用於操控python運行時的環境 11 ‘‘‘ 12 ‘‘‘列印出目前的目錄os.getcwd()‘‘‘ 13 print(os.getcwd())#C:\Users\oracle\PycharmProjects\Python_Lesson\基礎篇 14 15 ‘‘‘ 改變目前的目錄os.chdir(‘other_dirname‘)‘‘‘ 16 print(os.chdir(r‘c:\users‘))#None 17 print(os.getcwd())#c:\users 18 #在目前的目錄c:\users下建立1.txt檔案 19 open(‘1.txt‘,‘w‘,encoding=‘utf-8‘) 20 ‘‘‘列出目前的目錄中的所有檔案os.listdir()‘‘‘ 21 print(os.listdir()) 22 #[‘1.txt‘, ‘All Users‘, ‘Default‘, ‘Default User‘, ‘desktop.ini‘, ‘oracle‘, ‘Public‘] 23 24 # ‘‘‘重新命名檔案/目錄os.rename(‘ole_name‘,‘new_name‘)‘‘‘ 25 # os.rename(‘111.py‘,‘os模組的使用方法‘) 26 27 ‘‘‘返回目前的目錄(.)‘‘‘ 28 os.curdir #TypeError: ‘str‘ object is not callable,字串對象是不可調用的,curdir方法沒有(),去掉即可 29 ‘‘‘擷取目前的目錄的的父目錄字元串名(..)‘‘‘ 30 os.pardir 31 32 ‘‘‘一次建立多層目錄os.makedirs(‘path/path1/path2..‘)‘‘‘ 33 # os.makedirs("b:/www/xxx/yyy/aaa") 34 35 ‘‘‘從子目錄開始遞迴刪除空目錄,如目錄不為空白則無法刪除os.removedirs(‘dirnames‘)‘‘‘ 36 #在xxx中建立一個檔案file 37 open(r‘b:\www\xxx\file.txt‘,‘w‘) 38 # os.removedirs(r‘b:\www\xxx\yyy‘)#OSError: [WinError 145] 目錄不是空的。: ‘b:\\www\\xxx\\yyy‘,因為yyy下還有檔案即aaa目錄 39 #os.removedirs(r‘b:\www\xxx\yyy\aaa‘)#只刪除了yyy和aaa目錄,因為xxx中有檔案 40 41 ‘‘‘建立目錄os.mkdir(‘path\dirname‘)‘‘‘ 42 print(os.getcwd())#c:\users 43 os.mkdir(‘python_study‘) 44 print(os.listdir(os.getcwd())) 45 [‘1.txt‘, ‘All Users‘, ‘Default‘, ‘Default User‘, ‘desktop.ini‘, ‘oracle‘, ‘Public‘, ‘python_study‘] 46 47 ‘‘‘刪除單層目錄,不為空白則無法刪除,os.rmkdir(‘\path\dirname‘)‘‘‘ 48 os.rmdir(‘b:\www\\xxx\yyy\\aaa‘)#aaa目錄被刪除 49 50 ‘‘‘刪除一個檔案,不能刪除檔案夾os.remove()‘‘‘ 51 print(os.listdir(os.getcwd()))#查看目前的目錄,分別刪除其中的檔案1.txt和目錄python_study 52 os.remove(r‘c:\users\python_study‘)#PermissionError: [WinError 5] 存取被拒。: ‘c:\\users\\python_study‘ 53 os.remove(r‘c:\users\1.txt‘) 54 55 ‘‘‘刪除非空目錄,用到模組shutil中的方法shutil.rmtree(‘path\\filename‘)‘‘‘ 56 import shutil 57 shutil.rmtree(r‘c:\users\python_study‘)#刪除空目錄 58 os.chdir(‘b:\www‘)#切換到b盤的www目錄下 59 shutil.rmtree(‘b:\www\\xxx\yyy‘) 60 print(os.listdir(os.getcwd()))#[‘xxx‘] 61 62 ‘‘‘擷取檔案資訊‘‘‘ 63 print(os.stat(‘b:\www‘)) 64 # >>>os.stat_result(st_mode=16895, st_ino=1125899906888842,\ 65 # st_dev=1153046077, st_nlink=1, st_uid=0, st_gid=0, st_size=0,\ 66 # st_atime=1526540494, st_mtime=1526540494, st_ctime=1526540494) 67 ‘‘‘ 輸出作業系統特定的路徑分隔字元,windows為‘\\’,linux為‘/’ ‘‘‘ 68 print(os.sep)#‘\\‘ 69 轉帖牛人整理:http://www.cnblogs.com/alex3714/articles/5161349.html 70 71 os.getcwd() 擷取當前工作目錄,即當前python指令碼工作的目錄路徑 72 73 os.chdir("dirname") 改變當前指令碼工作目錄;相當於shell下cd 74 os.curdir 返回目前的目錄: (‘.‘) 75 os.pardir 擷取目前的目錄的父目錄字元串名:(‘..‘) 76 os.makedirs(‘dirname1/dirname2‘) 可產生多層遞迴目錄 77 os.removedirs(‘dirname1‘) 若目錄為空白,則刪除,並遞迴到上一級目錄,如若也為空白,則刪除,依此類推 78 os.mkdir(‘dirname‘) 產生單級目錄;相當於shell中mkdir dirname 79 os.rmdir(‘dirname‘) 刪除單級空目錄,若目錄不為空白則無法刪除,報錯;相當於shell中rmdir dirname 80 os.listdir(‘dirname‘) 列出指定目錄下的所有檔案和子目錄,包括隱藏檔案,並以列表方式列印 81 os.remove() 刪除一個檔案 82 os.rename("oldname","newname") 重新命名檔案/目錄 83 os.stat(‘path/filename‘) 擷取檔案/目錄資訊 84 os.sep 輸出作業系統特定的路徑分隔字元,win下為"\\",Linux下為"/" 85 os.linesep 輸出當前平台使用的行終止符,win下為"\t\n",Linux下為"\n" 86 os.pathsep 輸出用於分割檔案路徑的字串 87 os.name 輸出字串指示當前使用平台。win->‘nt‘; Linux->‘posix‘ 88 os.system("bash command") 運行shell命令,直接顯示 89 os.environ 擷取系統內容變數 90 os.path.abspath(path) 返回path正常化的絕對路徑 91 os.path.split(path) 將path分割成目錄和檔案名稱二元組返回 92 os.path.dirname(path) 返回path的目錄。其實就是os.path.split(path)的第一個元素 93 os.path.basename(path) 返回path最後的檔案名稱。如何path以/或\結尾,那麼就會返回空值。即os.path.split(path)的第二個元素 94 os.path.exists(path) 如果path存在,返回True;如果path不存在,返回False 95 os.path.isabs(path) 如果path是絕對路徑,返回True 96 os.path.isfile(path) 如果path是一個存在的檔案,返回True。否則返回False 97 os.path.isdir(path) 如果path是一個存在的目錄,則返回True。否則返回False 98 os.path.join(path1[, path2[, ...]]) 將多個路徑組合後返回,第一個絕對路徑之前的參數將被忽略 99 os.path.getatime(path) 返回path所指向的檔案或者目錄的最後存取時間100 os.path.getmtime(path) 返回path所指向的檔案或者目錄的最後修改時間
Python學習_os模組使用