python 判斷檔案是否存在

2022-05-03 04:42:07 字數 1758 閱讀 2959

在業務中遇到了需要判斷檔案是否存在的需求,所以順便整理一下python判斷檔案是否存在的方法。在操作檔案前,檢查檔案是否存在也是乙個良好的程式設計習慣。通常來說,有三種常見方式來判斷資料夾或檔案是否存在,分別是os模組,try語句和pathlib模組。

os模組

os模組中的os.path.exists(path)可以檢測檔案或資料夾是否存在,path為檔案/資料夾的名字/絕對路徑。返回結果為true/false

print os.path.exists("

/untitled/chapter3.py")

print os.path.exists("

chapter3.py

")

這種用法既能檢測檔案也能檢測資料夾,這也帶來問題,假如我想找乙個命名為helloworld的檔案,使用exists可能命中同名的helloworld資料夾。這時使用os.path.isdir()和os.path.isfile()可以加以區分。如果進一步想判斷是否可以操作檔案,可以使用os.access(path, model),model為操作模式,具體如下

if

__name__ == '

__main__':

if os.access("

/untitled/chapter3.py

", os.f_ok):

print

"file path is exist.

"if os.access("

/untitled/chapter3.py

", os.r_ok):

print

"file is accessible to read

"if os.access("

/untitled/chapter3.py

", os.w_ok):

print

"file is accessible to write

"if os.access("

/untitled/chapter3.py

", os.x_ok):

print

"file is accessible to execute

"

try語句

對檔案最簡單的操作方法是直接使用open()方法,但是檔案不存在,或發生許可權問題時open方法會報錯,所以配合try語句使用來捕捉一異常。try...open語法簡單優雅,可讀性強,而且不需要引入任何模組

if

__name__ == '

__main__':

try:

f = open("

/untitled/chapter3.py")

f.close()

except

ioerror:

print

"file is not accessible.

"

pathlib模組

在python2中pathlib屬於第三方模組,需要單獨安裝。但是python3中pathlib已經是內建模組了

pathlib用法簡單,與open類似。首先使用pathlib建立物件,進而使用exists(),is_file()等方法

if

__name__ == '

__main__':

path = pathlib.path("

chapter3.py")

print

path.exists()

print path.is_file()

Python判斷檔案是否存在

判斷檔案是否存在主要有兩種方法 import os os.path.exists filename true false以上方法中入參的路徑可以是檔案路徑也可以是資料夾路徑,所以可以用於判斷檔案以及資料夾是否存在。但是有一種特殊的情況是可能入參傳的是乙個資料夾路徑,但是資料夾路徑的上一層有個相同的檔...

python判斷檔案是否存在

在操作檔案前,檢查檔案是否存在也是乙個良好的程式設計習慣。通常來說,有三種常見方式來判斷資料夾或檔案是否存在,分別是os模組,try語句和pathlib模組。os模組 os模組中的os.path.exists path 可以檢測檔案或資料夾是否存在,path為檔案 資料夾的名字 絕對路徑。返回結果為...

python判斷檔案是否存在

在操作檔案前,檢查檔案是否存在也是乙個良好的程式設計習慣。通常來說,有三種常見方式來判斷資料夾或檔案是否存在,分別是os模組,try語句和pathlib模組。os模組 os模組中的os.path.exists path 可以檢測檔案或資料夾是否存在,path為檔案 資料夾的名字 絕對路徑。返回結果為...