Python的標準庫中的os模組包含普遍的作業系統功能。如果你希望你的程式能夠與平臺無關的話,這個模組是尤為重要的。即它允許一個程式在編寫後不需要任何改動,也不會發生任何問題,就可以在Linux和Windows下執行。
下面列出了一些在os模組中比較有用的部分。它們中的大多數都簡單明瞭。
os.sep 可以取代作業系統特定的路徑分割符。
os.name字串指示你正在使用的平臺。比如對於Windows,它是'nt',而對於Linux/Unix使用者,它是'posix'。
os.getcwd()函式得到當前工作目錄,即當前Python指令碼工作的目錄路徑。
os.getenv()和os.putenv()函式分別用來讀取和設定環境變數。
os.listdir()返回指定目錄下的所有檔案和目錄名。
os.remove()函式用來刪除一個檔案。
os.system()函式用來執行shell命令。
os.mkdir()函式用來建立目錄。
os.makedirs()函式用來建立目錄,如果此路徑中目錄沒有則自動建立,相當於linux下的mkdir -p。
os.linesep字串給出當前平臺使用的行終止符。例如,Windows使用'\r\n',Linux使用'\n'而Mac使用'\r'。
os.path.split()函式返回一個路徑的目錄名和檔名。
os.path.isfile()和os.path.isdir()函式分別檢驗給出的路徑是一個檔案還是目錄。
os.path.existe()函式用來檢驗給出的路徑是否真地存在
os和os.path模組
os.listdir(dirname):列出dirname下的目錄和檔案
os.getcwd():獲得當前工作目錄
os.curdir:返回但前目錄('.')
os.chdir(dirname):改變工作目錄到dirname
os.umask(mask):設定當前檔案許可權掩碼,並返回上一個許可權掩碼。
os.setsid():使獨立於終端的程式(不響應sigint,sighup等),使脫離終端。
os.path.isdir(name):判斷name是不是一個目錄,name不是目錄就返回false
os.path.isfile(name):判斷name是不是一個檔案,不存在name也返回false
os.path.exists(name):判斷是否存在檔案或目錄name
os.path.getsize(name):獲得檔案大小,如果name是目錄返回0L
os.path.abspath(name):獲得絕對路徑
os.path.normpath(path):規範path字串形式
os.path.split(name):分割檔名與目錄(事實上,如果你完全使用目錄,它也會將最後一個目錄作為檔名而分離,同時它不會判斷檔案或目錄是否存在)
os.path.splitext():分離檔名與副檔名
os.path.join(path,name):連線目錄與檔名或目錄
os.path.basename(path):返回檔名
os.path.dirname(path):返回檔案路徑
------------------------------------------------------------------------------
寫點東東,增加熟悉感
Code:
#!/usr/bin/python import os fadd = ("a.txt", "b.txt", "d/d.txt") fdel = ("c.txt",) InputPath = raw_input() if(os.path.isdir(InputPath)==False): print "you have input a incrrect path" else: os.chdir(InputPath) bf = os.listdir(InputPath) for f in fadd: (dr, fl) = os.path.split(f) ndr = os.getcwd()+"\" if(dr!=""): ndr = ndr+dr+"\" os.mkdir(ndr) os.chdir(ndr) hf = file(ndr+fl, 'w') hf.close() os.chdir(InputPath) for f in fdel: os.remove(f) af = os.listdir(InputPath) |