标签: introspection

获取实例的类名?

如果我从中执行此操作的函数是实例的类派生的基类,如何找出在Python中创建对象实例的类的名称?

想到也许检查模块可能在这里帮助了我,但它似乎没有给我我想要的东西.如果没有解析__class__成员,我不知道如何获取这些信息.

python introspection instanceof python-datamodel

1303
推荐指数
10
解决办法
83万
查看次数

是否有内置函数来打印对象的所有当前属性和值?

所以我在这里寻找的是像PHP的print_r函数.这样我就可以通过查看相关对象的状态来调试我的脚本.

python debugging introspection pretty-print python-datamodel

876
推荐指数
18
解决办法
75万
查看次数

Ruby:kind_of?与instance_of?与is_a?

有什么不同?我什么时候应该使用哪个?为什么会有这么多?

ruby inheritance introspection

470
推荐指数
4
解决办法
18万
查看次数

从该函数中确定函数名称(不使用traceback)

在Python中,不使用该traceback模块,有没有办法从该函数中确定函数的名称?

假设我有一个带功能栏的模块foo.执行时foo.bar(),有没有办法让酒吧知道酒吧的名字?或者更好的是,foo.bar这个名字?

#foo.py  
def bar():
    print "my name is", __myname__ # <== how do I calculate this at runtime?
Run Code Online (Sandbox Code Playgroud)

python function introspection traceback

423
推荐指数
21
解决办法
22万
查看次数

查找Python对象具有的方法

给定一个任何类型的Python对象,是否有一种简单的方法来获取该对象具有的所有方法的列表?

要么,

如果这是不可能的,至少有一种简单的方法来检查它是否有一个特定的方法,而不仅仅是检查方法被调用时是否发生错误?

python introspection

379
推荐指数
12
解决办法
32万
查看次数

如何从代码中获取当前方法的名称

我知道你能做到

this.GetType().FullName
Run Code Online (Sandbox Code Playgroud)

要得到

My.Current.Class
Run Code Online (Sandbox Code Playgroud)

但是我能得到什么呢

My.Current.Class.CurrentMethod
Run Code Online (Sandbox Code Playgroud)

c# introspection

356
推荐指数
7
解决办法
31万
查看次数

获取Python中的所有对象属性?

有没有办法获得所有属性/方法/字段/等.Python中的对象?

vars()接近我想要的,但它不起作用,除非一个对象有一个__dict__,这并不总是正确的(例如,它不适用于a list,a dict等).

python introspection python-2.6

336
推荐指数
4
解决办法
35万
查看次数

我如何查看Python对象?

我开始使用Python编写各种项目代码(包括Django Web开发和Panda3D游戏开发).

为了帮助我理解正在发生的事情,我想基本上"查看"Python对象内部以查看它们如何勾选 - 就像它们的方法和属性一样.

所以说我有一个Python对象,我需要打印出它的内容?这甚至可能吗?

python introspection

266
推荐指数
13
解决办法
28万
查看次数

将isKindOfClass与Swift一起使用

我想尝试一下Swift lang,我想知道如何将以下Objective-C转换为Swift:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
    [super touchesBegan:touches withEvent:event];

    UITouch *touch = [touches anyObject];

    if ([touch.view isKindOfClass: UIPickerView.class]) {
      //your touch was in a uipickerview ... do whatever you have to do
    }
}
Run Code Online (Sandbox Code Playgroud)

更具体地说,我需要知道如何isKindOfClass在新语法中使用.

override func touchesBegan(touches: NSSet, withEvent event: UIEvent) {

    ???

    if ??? {
        // your touch was in a uipickerview ...

    }
}
Run Code Online (Sandbox Code Playgroud)

reflection introspection ios swift

225
推荐指数
3
解决办法
11万
查看次数

在Python中获取方法参数名称

鉴于Python函数:

def a_method(arg1, arg2):
    pass
Run Code Online (Sandbox Code Playgroud)

如何提取参数的数量和名称.即,鉴于我有一个func的引用,我想要返回func.[something]("arg1","arg2").

这种情况的使用场景是我有一个装饰器,我希望使用方法参数的顺序与它们为实际函数出现的顺序相同.也就是说,当我调用aMethod("a","b")时,装饰器看起来会打印出"a,b"吗?

python introspection decorator python-datamodel

214
推荐指数
10
解决办法
12万
查看次数