请考虑以下代码:
>>> a='hello'
>>> a.__class__
<type 'str'>
>>>
>>> class Test(object):
... def __init__(self):
... print 'I am in init'
...
>>>
>>> o1=Test()
I am in init
>>> o1.__class__
<class '__main__.Test'>
>>>
我有以下基本问题:
Q1:从上面的代码来看,a
是类str
的对象是正确的吗?
str
是一类吗?我们如何确认?
Q2:我理解o1
是Test类的对象。__main__
中<class '__main__.Test'>
表示什么?
问题3:为什么a.__class__
和o1.__class
的输出中存在差异?
def TestFun():
,我读到TestFun
是一个指向函数对象的变量。因此,id(TestFun)
应该等于id(function object)
。请建议我如何检索这两个ID以确认我的理解。