Oop 用户定义类对象的类型-Python
我对课程或OOP不是很有经验,Oop 用户定义类对象的类型-Python,oop,python-2.7,Oop,Python 2.7,我对课程或OOP不是很有经验, 我对我得到的一些结果感到困惑 我正在尝试对我创建的类使用type() class TestClass: pass my_class = TestClass() print type(my_class) 上面的代码返回 <type: 'instance'> 根据我的理解,my_class应该初始化为TestClass对象。。正确的?为什么输出不是TestClass。另外,如果可能的话,我需要修改什
我对我得到的一些结果感到困惑 我正在尝试对我创建的类使用
type()
class TestClass:
pass
my_class = TestClass()
print type(my_class)
上面的代码返回
<type: 'instance'>
根据我的理解,
my_class
应该初始化为TestClass
对象。。正确的?为什么输出不是TestClass
。另外,如果可能的话,我需要修改什么才能得到这个结果呢?如果你想让TestClass成为一个对象,你必须这样指定它
class TestClass(object):
pass
发件人:
类和实例有两种风格:旧式(或经典)和
新式的
在Python2.1之前,旧式类是用户唯一可用的风格
用户。(旧式)阶级的概念与这个概念无关
类型:如果x
是一个旧式类的实例,那么x.\uuuuu class\uuuuu
指定x
的类别,但类型(x)
始终是
。
这反映了一个事实,即所有旧式实例都独立于
它们的类是用一个名为
例如
通过不继承对象
,您创建了一个旧式类,因此类型(my_类)
的行为与之类似
从对象继承
,您的问题就会消失:
class TestClass(object):
pass
在Python3中,所有类都是新样式的类,这很好