Python 常見os.path工具

內嵌的os.path模塊提供了一整套目錄處理相關工具,比如它提供的可移植函數可以用來檢查文件類型(isdir,isfile等)、測試文件是否存在(exists),以及通過文件名來獲取文件的大小(getsize):

>>> import os

>>> os.path.isdir(r'C:\Users')

True

>>> os.path.isfile(r'C:\Users')

False

>>> os.path.exists(r'c:Users\Default')

True

>>> os.path.getsize(r'C:\Python27\Lib\Bastion.py ')

Advertisements

5744

>>>

Os.path.isdir和os.path.isfile調用可以告訴我們文件名是目錄還是一個簡單的文件,如果文件不存在,二者都會返回False。還有用於分割和合併目錄路徑字元串的函數,os.paht.split將文件名從它目錄路徑中剝離開來,os.path.join則將它們合併起來。而這兩種字元串的split和join方法幾乎可起到與os.seq相同的作用。

>>> os.sep

'\\'

>>> pathname = r'C:\Python27\Lib\json'

>>> os.path.split(pathname)

Advertisements

('C:\\Python27\\Lib', 'json')

>>> pathname.split(os.sep)

['C:', 'Python27', 'Lib', 'json']

>>> os.sep.join(pathname.split(os.sep))

'C:\\Python27\\Lib\\json'

>>> os.path.join(*pathname.split(os.sep))

'C:Python27\\Lib\\json'

>>>

這個模塊中還有abspath調用,它能可移植地返迴文件的完整目錄路徑名。它負責將目前添加為前綴以及處理...父目錄句法等:

>>> os.getcwd()

'C:\\Python27'

>>> os.chdir(r'C:\Users')

>>> os.getcwd()

'C:\\Users'

>>> os.path.abspath('')

'C:\\Users'

>>> os.path.abspath('temp')

'C:\\Users\\temp'

>>> os.path.abspath('.')

'C:\\Users'

>>> os.path.abspath('..')

'C:\\'

>>> os.path.abspath(r'..\examples')

'C:\\examples'

>>>

在給出完整路徑之前,文件名採用基於當前工作目錄的相對路徑,因此如果你像了解用戶展示文件真正存儲於那個目錄下,就可以用os.paht.abspath函數來幫忙。

對python感興趣或者想學習python可以加群:330637182,群內有學習資料

Advertisements

你可能會喜歡