Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Oop 用户定义类对象的类型-Python_Oop_Python 2.7 - Fatal编程技术网

Oop 用户定义类对象的类型-Python

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。另外,如果可能的话,我需要修改什

我对课程或OOP不是很有经验,
我对我得到的一些结果感到困惑

我正在尝试对我创建的类使用
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中,所有类都是新样式的类,这很好