python文本 判断对象里面是否是类字符串

场景:

判断对象里面是否是类字符串

一般立刻会想到使用type()来实现

>>> def isExactlyAString(obj): 
      return type(obj) is type(‘‘) 
   
  >>> isExactlyAString(1) 
  False 
  >>> isExactlyAString(‘1‘) 
  True 
  >>>

还有

>>> def isAString(obj): 
      try :obj+‘‘ 
      except:return False 
      else:return True 
   
       
  >>> isAString(1) 
  False 
 >>> isAString(‘1‘) 
  True 
  >>> isAString({1}) 
  False 
  >>> isAString([‘1‘]) 
  False 
  >>>

虽然思路上和方法使用上都没用问题,但是如果从python的特性出发,我们可以找到更好的方法:isinstance(obj,str)

>>> def isAString(obj): 
      return isinstance(obj,str) 
   
  >>> isAString(1) 
  False 
 >>> isAString(‘1‘) 
  True 
  >>>

str作为python3里面唯一的一个字符串类,我们可以检测字符串是否是str的实例

原文地址:https://www.cnblogs.com/quanweiru/p/8358907.html

时间: 2024-10-08 08:39:42

python文本 判断对象里面是否是类字符串的相关文章

轻松python文本专题-判断对象里面是否是类字符串(推荐使用isinstance(obj,str))

场景: 判断对象里面是否是类字符串 一般立刻会想到使用type()来实现 >>> def isExactlyAString(obj): return type(obj) is type('') >>> isExactlyAString(1) False >>> isExactlyAString('1') True >>> 还有 >>> def isAString(obj): try :obj+'' except:re

判断对象是否是某个类的实例

判断对象是否是某个类的实例,可以用instanceof运算符,但是不推荐使用 比如var obj = new Date(); obj instanceof Date;//true obj instanceof Object;//true obj instanceof Array;//true 推荐使用constructor属性判断. obj.constructor == Date //true function Test(){} var tt = new Test(); tt.construct

8.python之面相对象part.1(初识类与对象)

一.类和对象的概念. 什么是类 类就是把一类事物相同的特征和动作整合到一起就是类比如说"人"就是一个类. 什么是对象 对象就是基于类创建出来的一个具体存在的事物这个事物包含了将其创造出来的类的特征和动作. 类与对象有什么关系一切的对象都是由类产生的假如说造一支笔首先要有一个造笔的模版上帝制造人也是一样制造一个人也需要一个造人的模版这个模板就是人的"类"然后根据类的定义来产生一支支笔和一个个的人. 什么是实例化 由类产生对象的过程就是实例化类实例化的结果就是一个对象对

补8.python之面相对象part.7(类相关函数的补充)

一,isinstance(obj.cls) & issubclass(sub,super) isinstance(obj.cls):用于检查一个对象是否属于某个类.(某个对象是否由某个类产生) l1 = list() print isinstance(l1,list) 输出: True 2.issubclass(sub,super):用于判断一个类是否是另一个类的子类. #sub指的是子类,super指的是父类. class c1(object): pass class c2(c1): pass

javascript 判断对象是否为空,字符串是否为空

//判断对象是否为空 //console.log(isEmptyObject());           //true //console.log(isEmptyObject({}));         //true //console.log(isEmptyObject(null));       //true //console.log(isEmptyObject(23));         //true //console.log(isEmptyObject({"te": 2})

8.python之面相对象part.8(类装饰器)

下面是一个对类使用装饰器的一个示例,主要目的就是给一个定义好的类通过装饰器的形式去临时增加属性或者方法. def add_property(**kwargs): def deco(obj): for key,value in kwargs.items(): setattr(obj,key,value) return obj return deco @ add_property(a=1,b=2,c=3) class test: pass t1 = test() print test.a print

Python isinstance判断对象类型

在Python中只需要使用内置的函数isinstance,使用起来非常简单,比如下面的例子: class objA: pass A = objA() B = 'a','v' C = 'a string' print isinstance(A, objA) print isinstance(B, tuple) print isinstance(C, basestring)

java 判断对象是否是某个类的类型方法

class Do1 { public static void main(String[] args) { AA a=new CC(); if(a instanceof CC) { CC b=(CC)a; b.run(); } } } class AA { int y=3; void brun() { System.out.println(y); } } class CC extends AA { int x=1; void run() { System.out.println(x); } } c

【OC学习-15】如何判断两个对象是否属于同一个类?如何判断一个对象是否属于某一个类?

每个对象都有一个isa,这个isa里面储存了很多关于类对象的一些信息,所以当这个对象编译的时候,程序会通过isa来查看这个对象的类型,即执行的时候再识别叫动态类型识别.而且这个对象里面的方法其实是被封装在SEL里面(有方法ID和内容),当外面利用方法传递消息的时候,先把这个方法ID化,然后找相同ID的方法,找到了就调用,找不到就通过isa里存储的信息往父类找,最终找不到,就报错.(相同的方法签名=相同的ID) (1)每个对象都可以调用类对象,如果它们是一个类出来的,它们的类对象也是一样的,所以判