『壹』 python怎麼判斷文件是否存在
正文
通常在讀寫文件之前,需要判斷文件或目錄是否存在,不然某些處理方法可能會使程序出錯。所以最好在做任何操作之前,先判斷文件是否存在。
這里將介紹三種判斷文件或文件夾是否存在的方法,分別使用os模塊、Try語句、pathlib模塊。
回到頂部
1.使用os模塊
os模塊中的os.path.exists()方法用於檢驗文件是否存在。
判斷文件是否存在
判斷文件夾是否存在
可以看出用os.path.exists()方法,判斷文件和文件夾是一樣。
其實這種方法還是有個問題,假設你想檢查文件「test_data」是否存在,但是當前路徑下有個叫「test_data」的文件夾,這樣就可能出現誤判。為了避免這樣的情況,可以這樣:
只檢查文件
import os通過這個方法,如果文件」test-data」不存在將返回False,反之返回True。
即是文件存在,你可能還需要判斷文件是否可進行讀寫操作。
回到頂部
判斷文件是否可做讀寫操作
使用os.access()方法判斷文件是否可進行讀寫操作。
語法:
os.access(path, mode)
path為文件路徑,mode為操作模式,有這么幾種:
os.F_OK: 檢查文件是否存在;
os.R_OK: 檢查文件是否可讀;
os.W_OK: 檢查文件是否可以寫入;
os.X_OK: 檢查文件是否可以執行
該方法通過判斷文件路徑是否存在和各種訪問模式的許可權返回True或者False。
回到頂部
2.使用Try語句
可以在程序中直接使用open()方法來檢查文件是否存在和可讀寫。
語法:
open()
如果你open的文件不存在,程序會拋出錯誤,使用try語句來捕獲這個錯誤。
程序無法訪問文件,可能有很多原因:
如果你open的文件不存在,將拋出一個FileNotFoundError的異常;
文件存在,但是沒有許可權訪問,會拋出一個PersmissionError的異常。
所以可以使用下面的代碼來判斷文件是否存在:
其實沒有必要去這么細致的處理每個異常,上面的這兩個異常都是IOError的子類。所以可以將程序簡化一下:
使用try語句進行判斷,處理所有異常非常簡單和優雅的。而且相比其他不需要引入其他外部模塊。
回到頂部
3. 使用pathlib模塊
pathlib模塊在Python3版本中是內建模塊,但是在Python2中是需要單獨安裝三方模塊。
使用pathlib需要先使用文件路徑來創建path對象。此路徑可以是文件名或目錄路徑。
檢查路徑是否存在
檢查路徑是否是文件
『貳』 python中如何判斷目錄內是文件還是文件夾
look~~
>>> os.path.exists("te")
True
>>> os.path.exists("nothing")
False
>>> os.path.isfile("nothing")
False
>>> os.path.isdir("nothing")
False
>>>
>>> os.path.isdir("te")
False
>>> os.path.isfile("te")
True
>>>
建議抄你先判斷是否存在襲,如果確實存在,你再進行判斷是文件還是文件夾
-------------------------
Linux,文件夾名和同級目錄的文件名是不可以同時存在的。
zhangpeng@Earth:~$ mkdir te
mkdir: cannot create directory `te': File exists
zhangpeng@Earth:~$ rm te
zhangpeng@Earth:~$ mkdir te
zhangpeng@Earth:~$ > te
-bash: te: Is a directory
『叄』 python 判斷是文件還是目錄
os.listdir("路徑")列出所有文件和目錄
os.path.isdir(「文件名」)判斷是目錄嗎,是返回True,不是返回False
os.path.isfile同上判斷文件
『肆』 python 看是否存在文件夾 Python 判斷文件/目錄是否存在
1、Python 操作文件時,我們一般要先判斷指定的文件或目錄是否存在,不然容易產生異常。
2、例如我們可以使用 os 模塊的 os.path.exists() 方法來檢測文件是否存在:
import os.path
os.path.isfile(fname)
3、如果你要確定他是文件還是目錄,從 Python 3.4 開始可以使用 pathlib 模塊提供的面向對象的方法 (Python 2.7 為 pathlib2 模塊):
from pathlib import Path
my_file = Path(/path/to/file)
if my_file.is_file():
# 指定的文件存在
檢測是否為一個目錄:
if my_file.is_dir():
# 指定的目錄存在
4、如果要檢測路徑是一個文件或目錄可以使用 exists() 方法:
if my_file.exists():
# 指定的文件或目錄存在
在 try 語句塊中你可以使用 resolve() 方法來判斷:
try:
my_abs_path = my_file.resolve()
except FileNotFoundError:
# 不存在
else:
# 存在
『伍』 Python3 & 如何在Python中寫文件路徑
Python中文件路徑共分為兩種:絕對路徑和相對路徑
1、絕對路徑就是文件的真正存在的路徑,是指從硬碟的根目錄(盤符)開始,進行一級級目錄指向文件。
2、 相對路徑是以當前文件為基準進行一級級目錄指向被引用的資源文件。
其中大小寫不影響windows定位到文件
python 文件路徑書寫方式有兩種:
方法一:使用轉義字元
filePath = 'E:\Temp\test'
方法二:使用r聲明字元串
filePath = r'E:\Temp\test'
上述寫法中"\ 「為字元串中的特殊字元,加上r後變為原始字元串,則不會對字元串中的」\t"、"\r" 進行字元串轉義。
『陸』 python怎麼看一個py文件在哪裡出現過
python運行py文件的方法:
1.首先在資源管理器里復制一下py文件存放的路徑,並打開命令行;
2.然後切換到py文件的路徑下面;
3.接著輸入「python 文件名.py」;
4.最後按下回車鍵,可以看到窗口中py文件開始運行了。
以上就是python怎麼運行py文件的詳細內容。