首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何定义isinstance()的类

如何定义isinstance()的类
EN

Stack Overflow用户
提问于 2021-08-09 10:13:27
回答 2查看 70关注 0票数 1

我正在尝试构建一个函数,它只影响某个类中的项。这发生在Python API - intro here

目前我这样做了

代码语言:javascript
复制
def tidy_names(l):
    for k in l.keys():
        print(k, type(l[k]))
        
tidy_names(locals())

哪个输出(例如)

代码语言:javascript
复制
parte_B1 <class 'bpy_types.Object'>
parte_B2 <class 'bpy_types.Object'>
parte_B3 <class 'bpy_types.Object'>
parte_B4 <class 'bpy_types.Object'>
parte_G1 <class 'bpy_types.Object'>
parte_G2 <class 'bpy_types.Object'>
parte_C1 <class 'bpy_types.Object'>

我想做的是

代码语言:javascript
复制
def tidy_names(l):
    for k in l.keys():
        if isinstance(l[k], some_class):
            l[k].name = k

某些类指向<class 'bpy_types.Object'>的地方-正在尝试

代码语言:javascript
复制
isinstance(l[k], "<class 'bpy_types.Object'>"))

抛出错误:

代码语言:javascript
复制
TypeError: isinstance() arg 2 must be a type or tuple of types

所以问题是:我需要传递什么给isinstance(),这样它才能像我希望的那样工作?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-08-09 17:35:59

看起来你想要下面的内容

代码语言:javascript
复制
from bpy import types as bpy_types

print(isinstance(list_element, bpy_types.Object))
票数 0
EN

Stack Overflow用户

发布于 2021-08-09 10:31:15

你可以试试这个。

代码语言:javascript
复制
isinstance(l[k], bpy_types.Object))

检查对象是否为整数(或整数的子类)的用法示例如下

代码语言:javascript
复制
isinstance(1, int)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68710358

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档