真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

判斷Python對(duì)象是不是為文件對(duì)象的方法有哪些-創(chuàng)新互聯(lián)

創(chuàng)新互聯(lián)www.cdcxhl.cn八線動(dòng)態(tài)BGP香港云服務(wù)器提供商,新人活動(dòng)買多久送多久,劃算不套路!

為旌德等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及旌德網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)、旌德網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!

這篇文章主要介紹判斷Python對(duì)象是不是為文件對(duì)象的方法有哪些,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

文件操作是開發(fā)中經(jīng)常遇到的場(chǎng)景,那么如何判斷一個(gè)對(duì)象是文件對(duì)象呢?下面我們總結(jié)了3種常見的方法。

方法1:比較類型

第一種方法,就是判斷對(duì)象的type是否為file

python
>>> fp = open(r"/tmp/pythontab.com")
>>> type(fp)

>>> type(fp) == file
True

注意:該方法對(duì)于從file繼承而來的子類不適用, 看下面的實(shí)例

class fileDetect(file):
    pass # 中間代碼無所謂,直接跳過不處理
fp2 = fileDetect(r"/tmp/pythontab.com")
fileType = type(fp2)
print(fileType)

結(jié)果:

方法2:isinstance方法

要判斷一個(gè)對(duì)象是否為文件對(duì)象(file object),可以直接用isinstance()判斷。

如下代碼中,open得到的對(duì)象fp類型為file,當(dāng)然是file的實(shí)例,而filename類型為str,自然不是file的實(shí)例

>>> isinstance(fp, file)
True
>>> isinstance(fp2, file)
True
>>> filename = r"/tmp/pythontab.com"
>>> type(filename)

>>> isinstance(filename, file)
False

方法3:推測(cè)法

在python中,類型并沒有那么重要,重要的是”接口“。如果它走路像鴨子,叫聲也像鴨子,我們就認(rèn)為它是鴨子(起碼在走路和叫聲這樣的行為上)。

按照這個(gè)思路我們就有了第3中判斷方法:判斷一個(gè)對(duì)象是否具有可調(diào)用的read,write,close方法(屬性)。

def isfile(f):
    """
    Check if object 'f' is readable file-like 
that it has callable attributes 'read' , 'write' and 'close'
    """
try:
if isinstance(getattr(f, "read"), collections.Callable) \
and isinstance(getattr(f, "write"), collections.Callable) \
and isinstance(getattr(f, "close"), collections.Callable):
return True
except AttributeError:
pass
return False

以上是判斷Python對(duì)象是不是為文件對(duì)象的方法有哪些的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道!


分享名稱:判斷Python對(duì)象是不是為文件對(duì)象的方法有哪些-創(chuàng)新互聯(lián)
本文網(wǎng)址:http://weahome.cn/article/pjdod.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部