判断是否为字符串

对于普通的ACSII(iso)字符串和Unicode字符串,可采用以下方法鉴别:

 

  
    
def isAString(anobj):
return isinstance(anobj,basestring)

原理:因为str和Unicode字符串都是从基类basestring继承而来的,(basestring内建基类,为空,类似于object)

 

 

但是对于标准库中的UserString,此方法不适用,可采用以下方法鉴别:

  
    
def isStringLike(anobj):
try : anobj.lower() + anobj + ''
except : return False
else : return True

 

此方法比较全面,但是效率较低

你可能感兴趣的:(字符串)