看了development into python ,用的的import os
這裡方便大家理解,直接用 from os import path
當然這個的壞事是不要在自己的**中再次定義path這個欄位.但是有個好處是不用每次都sys.path ...
>>> from os import path
>>> path.expanduser('~')
'c:\\users\\zhangzhipeng'
【釋】expanduser是獲取系統當前使用者的主目錄,mac無效。
>>> path.join('c:\python27\music','summary.***')
'c:\\python27\\music\\summary.***'
【釋】拼接路徑和檔名。反正我的不需要轉義,而且正反斜線都可以獲取到正確的路徑,大家最好是按照輸出結果的路徑進行拼接,以防出錯。
>>> path.join(path.expanduser('~'),'summary.***')
'c:\\users\\zhangzhipeng\\summary.***'
【釋】將使用者主目錄和檔名進行拼接
>>> m_summary=path.join('c:\python27\music','summary.***')
>>> path.split(m_summary)
('c:\\python27\\music', 'summary.***')
【釋】獲取一首歌的完整路徑名(含檔名),將路徑名分割為路徑和檔案名字。
>>> path.splitext('summary.***')
('summary', '.***')
【釋】將完整檔名分為檔名和字尾
>>> m_name, m_extension = path.splitext('summary.***')
>>> m_name, m_extension
('summary', '.***')
【釋】同上
>>> path.splitext(m_summary)
('c:\\python27\\music\\summary', '.***')
【釋】假如給定乙個完整的路徑含檔名和字尾,這樣也可以直接獲取到檔案型別。不過不建議這麼做,因為生成的元組中元素1毫無意義。
>>> from os import listdir as os_dir
>>> os_dir('..')
['config.sys', 'debug', 'documents and settings', 'eclipse', 'freefallprotection.log', 'hiberfil.sys', 'hotfix', 'intel','program files', 'programdata', 'python27','system volume information', 'temp', 'users', 'windows']
>>> os_dir('.')
['dlls', 'doc', 'include', 'lib', 'libs', 'license.txt', 'music', 'mytest', 'news.txt', 'pil-wininst.log', 'python.exe', 'pythonw.exe', 'readme.txt', 'removepil.exe', 'removetrac.exe', 'removevideocapture.exe'...
] >>> dirname='c:\python27'
>>> os_dir(dirname)
['dlls', 'doc', 'include', 'lib', 'libs', 'license.txt', 'music', 'mytest', 'news.txt', 'pil-wininst.log', 'python.exe', 'pythonw.exe', 'readme.txt', 'removepil.exe', ...
] 【釋】可以看到,引入模組可以起乙個別名,os_dir 等等(乙個有意義的名字即可)。 ".." or '..\'當前目錄或檔案的父目錄的同級別目錄和檔案;"." or
".\" 當前目錄下同級別目錄和檔案
>>> os.getcwd()
'c:\\python27'
【釋】getcwd 獲取當前工作目錄
>>> [f for f in os_dir(
os.getcwd()) if path.isfile(path.join(
os.getcwd(),f))]
['license.txt', 'news.txt', 'pil-wininst.log', 'python.exe', 'pythonw.exe', 'readme.txt', 'removepil.exe', 'removetrac.exe', 'removevideocapture.exe', 'trac-wininst.log', 'videocapture-wininst.log', 'w9xpopen.exe']
>>> [f for f in os_dir(
os.getcwd()) if path.isdir(path.join(
os.getcwd(),f))]
['dlls', 'doc', 'include', 'lib', 'libs', 'music', 'mytest', 'scripts', 'tcl', 'tools']
isfile 判斷檔案是否為檔案
isdir判斷檔案是否為目錄
islink判斷檔案是否為鏈結
isabs判斷檔案是否為絕對路徑
ismount判斷檔案是否為驅動器
python系統模組
python系統模組主要由sys和os承包,那麼區別主要在 呢?sys負責匯出與python直譯器本身相關的元件 os包含與python所在底層作業系統相對應的變數和函式glob 檔名擴充套件 socket 網路連線和程序間通訊 ipc threading,thread,queue 執行和同步化併發...
python 系統模組
一 os模組 參考文案 檔案屬性相關的函式 import os os.path.join 拼路徑 print os.path.join d movies a.mp4 os.path.exists 判斷目錄 檔案是否存在 os.path.dirname 獲取父目錄 os.path.abspath 根據...
python模組使用 python 模組發布及使用
將模組 此處名為nester 寫好後,與setup.py放入同乙個資料夾中 from distutils.core importsetup setup name 發布名,一般同模組名 version 版本號 py modules 模組列表 引數,其他引數根據需求新增 構建發布檔案 在資料夾下開啟終端...