C 怎么处理windows路径_python学习笔记-7:文件读写之文件与文件路径
文件關鍵屬性:路徑+文件名
根據已知的文件路徑生成包含正確路徑分隔符的文件路徑字符串:
import osstt = os.path.join('usr','bin','spam')print(stt)#usrbinspamwindows的路徑分隔符為,字符串中使用需要轉義字符,因此應輸入為
當前工作目錄
程序運行時,都有一個當前工作目錄。要查看當前工作目錄,可用os.getcwd();要改變當前工作目錄,可用os.chdir(),如:
import osos.getcwd()os.chdir('C:')如果改變的當前工作目錄不存在,程序會報錯
相對路徑和絕對路徑的概念和表示
創建新文件夾:os.makedirs()
import osos.makedirs('C:甥敳獲EDZDesktopjjuu')os模塊的os.path包含可很多與文件名和文件路徑相關的函數。
處理相對路徑和絕對路徑的函數
os.path.abs(path)參數為相對路徑,函數返回絕對路徑的字符串
os.path.isabs(path)如果參數是一個絕對路徑,返回true,否則返回false
os.path.relpath(path,start)返回從start路徑到path路徑的相對路徑的字符串。如果沒有提供start,就使用當前工作目錄。
代碼示例:
>>> os.path.abspath('.')'C:Python34'>>> os.path.abspath('.Scripts')'C:Python34Scripts'>>> os.path.isabs('.')False>>> os.path.isabs(os.path.abspath('.'))True>>> os.path.relpath('C:Windows', 'C:')'Windows'>>> os.path.relpath('C:Windows', 'C:spameggs')'....Windows'>>> os.getcwd()'C:Python34'os.path.basename()和os.path.dirname()
os.path.dirname(path)將返回參數中最后一個斜杠之前所有的內容
os.path.basename(path)將返回參數中最后一個斜杠之后所有的內容
代碼示例:
>>> path = 'C:WindowsSystem32calc.exe'>>> os.path.basename(path)'calc.exe'>>> os.path.dirname(path)'C:WindowsSystem32'如果同時需要一個路徑的目錄名稱和基本名稱,就可以調用os.path.split(),獲得這兩個字符串的元組,像這樣:
>>> (os.path.dirname(calcFilePath), os.path.basename(calcFilePath))('C:WindowsSystem32', 'calc.exe')使用 split()字符串方法,并根據 os.path.sep 中的字符串進行分割。
>>> calcFilePath.split(os.path.sep)['C:', 'Windows', 'System32', 'calc.exe']os.path.getsize(path)
返回path參數中文件的字節數
注:調用 os.listdir(path)將返回文件名字符串的列表,包含 path 參數中的每個文件
檢查路徑有效性
如果你提供的路徑不存在,許多 Python 函數就會崩潰并報錯。os.path 模塊提供了一些函數,用于檢測給定的路徑是否存在,以及它是文件還是文件夾。
如果 path 參數所指的文件或文件夾存在,調用 os.path.exists(path)將返回 True,否則返回 False。
如果 path 參數存在,并且是一個文件,調用 os.path.isfile(path)將返回 True,否則返回 False。
如果 path 參數存在,并且是一個文件夾,調用 os.path.isdir(path)將返回 True,否則返回 False。
總結
以上是生活随笔為你收集整理的C 怎么处理windows路径_python学习笔记-7:文件读写之文件与文件路径的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 监管新规下车险保费最高可降23%?业内人
- 下一篇: 让你注销京东白条的“客服” 背后究竟是什