如何在python3中获取str类型的类的名称?

Dipesh Sunrait:

如何与类名称的字符串进行比较(如变量看起来像这样),<_io.TextIOWrapper name='/etc/passwd' mode='r' encoding='UTF-8'>然后如何检查该对象?我该如何专门测试呢?这是我所做的但失败了。:(

>>> a = open('/etc/passwd')
a
<_io.TextIOWrapper name='/etc/passwd' mode='r' encoding='UTF-8'>
>>> type(a)
<class '_io.TextIOWrapper'>
>>> a.__class__
<class '_io.TextIOWrapper'>
>>> a.__class__ == 'io.TextIOWrapper'
False
>>> a.__class__ == '_io.TextIOWrapper'
False
>>> 

我如何获得类似“ _io.TextIOWrapper”的字符串?如果无法获取字符串,那么如果类名是_io.TextIOWrapper,我该如何进行比较,否则执行此操作。

七大洋 :

您可以使用isinstance方法检查

>>> a = open('/etc/passwd')
>>> import io
>>> isinstance(a, io.TextIOWrapper)
True

如果出于某些奇怪的原因而绝对需要按String进行比较,则可以执行以下操作:

str(a.__class__) == "<class '_io.TextIOWrapper'>"

但是除非有充分的理由这样做,否则绝对不能这样做。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在python中另一个类的函数中获取调用者类名称?

如何在jar文件中获取类的名称?

如何在注释处理中获取超类名称

python3类型str不支持缓冲区API

如何在Python3中获取“旧” zip()?

如何在python3中获取小数除法余数?

如何在python3中检索类类型的子类?

Pandas:如何在python3中的混合类型多索引中使用切片?

如何在模板Django中获取类模型的名称

如何在python3中创建具有混合类型的多维数组?

如何在Python3中测试对象是否具有odict_values类型?

如何在python中的“类”类型中添加类型提示

如何获取python3数据类实例的索引?

如何在类中获取__str__方法以在python中返回此特定值

如何在Python中获取类的类方法的所有名称

如何在Python中获取类路径

获取python类的名称空间父类型

Typeinfo如何在多态集合中获取类的名称/ ID?

如何在Python3中的类中调用函数

如何在Java中获取类的字段名称

如何在__str__中修复零件,使其在类中显示实例的名称?的Python 2X

如何在JQuery removeClass(function)中获取类的名称?

如何在 Python3 中的类中迭代 self 属性?

如何在 python3 中对 tensorflow.Session() 进行类型注释

如何在python3中使用psycopg2从postgres获取数据,包括列名

如何在 Python 中按名称获取类

在子类python3中获取超类输入参数

如何在Python3中正确搜索并获取值?

如何在 PHP 中按名称获取类?