国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python檢測一個對象是否為字符串類的方法

2019-11-25 17:25:14
字體:
來源:轉載
供稿:網友

目的

  測試一個對象是否是字符串

方法

Python的字符串的基類是basestring,包括了str和unicode類型。一般可以采用以下方法:

復制代碼 代碼如下:

def isAString(anobj):

  return isinstance(anobj,basestring)

不過以上方法對于UserString類的實例,無能無力。

復制代碼 代碼如下:

In [30]: b=UserString.UserString('abc')

In [31]: isAString(b)
Out[31]: False

In [32]: type(b)
Out[32]: <class 'UserString.UserString'>

Python中常用的鴨子判斷法:如果它走路像鴨子,叫聲像鴨子,就可以認為它是鴨子了。

復制代碼 代碼如下:

def isStringLike(anobj):

    try:

        anobj.lower() + anobj + ' '

    except:

        return False

    else:

        return True

 測試結果如下:

復制代碼 代碼如下:

>>> import UserString
>>> b=UserString.UserString('abc')
>>> isStringLike(b)
True
>>>

關于風格

根據自己的語氣去執行任務,在此過程中檢測并處理由于不匹配產生的所有錯誤和異常。這種處理方式稱為:

復制代碼 代碼如下:

EAFP:It's easier to ask forgiveness than permission.

try/except是保證該風格的關鍵工具。

八卦一下,關于UserString類

對于2.X版本:Python文檔中提到,如果不涉及到2.2以前的版本,請考慮直接使用str類型來代替UserString類型。

對于3.X版本:該模塊已經移到collection模塊中。

該類主要有兩種方法:

復制代碼 代碼如下:

class UserString.UserString([sequence])

具體使用前面已經舉例,注意可以使用str()轉化為str類型

復制代碼 代碼如下:

class UserString.MutableString([sequence])

字符串也可以變哦!Look here:

復制代碼 代碼如下:

a=UserString.MutableString('abc')
a[0]='c'

In [10]: a
Out[10]: 'cbc'


 
Python文檔上有行黑體字,原來已經是棄用的方法,3.0就沒有了:
復制代碼 代碼如下:

Deprecated since version 2.6: The MutableString class has been removed in Python 3.0.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 阿拉善右旗| 新昌县| 太仓市| 博客| 永仁县| 孟村| 长乐市| 东港市| 仙桃市| 屏南县| 通辽市| 凤凰县| 遂宁市| 林西县| 泽州县| 栾城县| 崇义县| 广宗县| 翁牛特旗| 蕲春县| 永泰县| 乌拉特前旗| 波密县| 搜索| 镇原县| 永德县| 梅河口市| 荆州市| 隆化县| 洛南县| 广宗县| 阳西县| 翼城县| 临湘市| 左云县| 伊川县| 永定县| 芮城县| 密云县| 富顺县| 昌邑市|