Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.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
类Classname(object),什么样的单词是';对象';用Python?_Python_Object_Keyword - Fatal编程技术网

类Classname(object),什么样的单词是';对象';用Python?

类Classname(object),什么样的单词是';对象';用Python?,python,object,keyword,Python,Object,Keyword,当我创建一个具有唯一内容的模块时: class Classname(randomobject): pass 我试着运行模块的.py文件,解释器说,randomobject没有定义 但当我这样做的时候: class Classname(object): pass 模块运行正常。因此,如果对象不是关键字,那么它是什么?对象是指内置类型的标识符 与许多其他语言不同,Python中没有基元类型。一切都是一个对象,包括所有数据类型 我不确定您为什么希望从randomobject进行继承

当我创建一个具有唯一内容的模块时:

class Classname(randomobject):
    pass
我试着运行模块的.py文件,解释器说,
randomobject
没有定义

但当我这样做的时候:

class Classname(object):
    pass

模块运行正常。因此,如果
对象
不是关键字,那么它是什么?

对象
是指内置类型的标识符

与许多其他语言不同,Python中没有基元类型。一切都是一个对象,包括所有数据类型


我不确定您为什么希望从
randomobject
进行继承。

object
是在Python 2中创建新样式类时从中继承的基类。

object
是一个(全局)变量。默认情况下,它绑定到一个内置类,该类是类型层次结构的根

(这导致了一个有趣的属性,您可以采用任何内置类型,并使用
\uuuu base\uuu
属性来访问名为object的类型)


所有不是关键字或运算符的内置内容都是标识符。

以下三个类声明在Python3中是相同的

class Classname(object):
    pass

class Classname():
    pass

class Classname:
    pass
好吧,会有一些小的,但不是根本上重要的,因为对象类是所有对象的基础


如果您计划编写Python不可知代码(Python2和Python3不可知),您可以使用第一个声明。

但是,在Python3.x中不必这样做。新样式类是默认的。在Python3中,所有类仍然从object继承。另外,“对象的类型”是一个标识符;我的意思是,
object
在Python中没有特殊的语法或语义意义,比如说,
int
在Java中有特殊的语法或语义意义。严格地说,“对象的单词类型”是一个变量,因此。更新的答案反映了这一点。谢谢。我想你不能查看这个全局变量的代码?@Bentley4我不知道你的意思。对不起。在/usr/lib/python2.7中可以找到标准的python模块。通过自己打开python文件,您可以看到使用help函数无法看到的变量分配、类和函数体等模块。有没有办法访问内置模块并查看该模块中的对象变量?@Bentley4我从未尝试过。考虑一下贪婪;如果没有,您必须在C源代码中找到它。这里还有一个问题,它解决了Python
对象
标识符:。对于记录,它不是重复的。这是关于遗传的机制;这个问题是关于正在发生的事情的句法结构,并且有多种答案。