python獲取文件當(dāng)前所在路徑 python中如何判斷是否存在?
python中如何判斷是否存在?通常在讀寫文件之前,需要判斷文件或目錄是否存在,否則一些處理方法可能會使程序出錯(cuò)。所以它 最好在做任何事情之前判斷該文件是否存在。這里將介紹三種判斷文件或文件夾是否存在
python中如何判斷是否存在?
通常在讀寫文件之前,需要判斷文件或目錄是否存在,否則一些處理方法可能會使程序出錯(cuò)。所以它 最好在做任何事情之前判斷該文件是否存在。
這里將介紹三種判斷文件或文件夾是否存在的方法,分別使用os模塊、Try語句和pathlib模塊。
1.使用操作系統(tǒng)模塊
os模塊中的()方法用于檢查文件是否存在。
判斷文件是否存在。
一個(gè)
2
三
四
五
六
七
導(dǎo)入操作系統(tǒng)
#如果存在,則返回Tru:可以這樣。
僅檢查文件
一個(gè)
2
gtgtgtimport操作系統(tǒng)
(#34測試-數(shù)據(jù)# 34)
使用這種方法,如果文件 "測試數(shù)據(jù) "不存在,則返回Fals:。
Os。F_OK:檢查文件是否存在。
Os。R_OK:檢查文件是否可讀。
Os。W_OK:檢查文件是否可以寫入。
Os。X_OK:檢查文件是否可以執(zhí)行。
該方法通過判斷文件路徑是否存在,以及各種訪問的權(quán)限,返回Tru:
gtgtgt打印編號34Giv文件路徑存在。#34
gtgtgtif(# 34/fil:
gtgtgt打印#34文件可讀取# 34
gtgtgtif(# 34/fil:
gtgtgt打印#34文件可用于寫入# 34
gtgtgtif(# 34/fil:
gtgtgt打印#34文件可訪問以執(zhí)行# 34
使用Try語句
您可以在程序中直接使用op:。
一個(gè)
2
三
四
五
六
七
try:
f打開()
()
除了Fil:
打印# 34文件未找到。#34
除了P:
你沒有權(quán)限訪問這個(gè)文件。#34
事實(shí)上,沒有必要如此詳細(xì)地處理每個(gè)異常。以上兩個(gè)例外都是IO:。
一個(gè)
2
三
四
五
try:
f打開()
()
除了IO:
打印# 34文件不可訪問。#34
使用try語句判斷,處理所有異常非常簡單優(yōu)秀。優(yōu)雅。而且與其他相比不需要引入其他外部模塊。
3.使用pathlib模塊
Pathlib模塊在Python3版本中是內(nèi)置模塊,但在Python2中,需要單獨(dú)安裝三方模塊。
使用pathlib需要使用文件路徑來創(chuàng)建path對象。該路徑可以是文件名或目錄路徑。
檢查路徑是否存在。
一個(gè)
2
路徑(#34路徑/文件# 34)
path.exist()
檢查路徑是否是文件。
一個(gè)
2
路徑(#34路徑/文件# 34)
_文件()
判斷文件是否為空:
復(fù)制代碼
復(fù)制代碼
#!/usr/bin/env python
#coding:utf-8
#dat:2018-04-03
導(dǎo)入操作系統(tǒng)
文件路徑#34/選項(xiàng)/數(shù)據(jù)/報(bào)告# 34
文件名#34r:
打印(#34文件存在#34)
如果(FIL:
打印(#34文件存在并且不是空的#34)
#打印((文件))
(文件)
(# 39ls-左%s#39 %(文件))
:
打印(#34文件存在,但為空...#34)
(# 39ls-左%s#39 %(文件))
:
打印(#34文件不存在#34)
python運(yùn)行總是找不到目錄或文件?
原因一::打開了一個(gè)文件。;不存在。在這個(gè)例子中,他故意輸入了一個(gè)文件名。;不存在,并試圖打開它。該計(jì)劃不能 找不到這個(gè)文件名,所以它引發(fā)了IO:文件#34 #34,第1行,在IO:[錯(cuò)誤2]沒有這樣的文件或directory: # 39a . txt # 39”
原因2:寫入:文件時(shí)遇到python錯(cuò)誤。有同學(xué)遇到過IOERRORRNO 0的錯(cuò)誤,正在使用。一種打開文件,然后讀取文件內(nèi)容的方法。修改讀取內(nèi)容后重寫文件,程序在寫入時(shí)也遇到了IOError錯(cuò)誤。這時(shí)候你要注意看完之后記得關(guān)閉文件。當(dāng)你需要寫文件時(shí),你應(yīng)該再次以W模式打開文件。