【问题标题】:what's the definition of object in python?python中对象的定义是什么?
【发布时间】:2019-12-11 12:59:23
【问题描述】:

Python 中的一切都是对象!

我想知道,Python 中的 object 到底是什么定义?我找不到明确的答案。任何的想法?

我找到了一些意见:

1.objects 可以分配给变量或作为参数传递给函数。

2.objects必须有属性和方法。

3.对象是可子类化的。

【问题讨论】:

  • 您对 OOPS 有任何先验知识吗?
  • 对象不是子类,类是。对象是类的实例。
  • 在python中:函数、类、str、int都是对象,所以我很困惑,想知道Python中对象的定义。

标签: python oop object


【解决方案1】:

“对象只是数据(变量)和作用于这些数据的方法(函数)的集合。”要了解更多信息,我建议您花一些时间阅读 Python Objects and Class 并仔细阅读所有代码示例。

来自 Python documentation

类提供了一种将数据和功能捆绑在一起的方法。创建一个新类会创建一种新类型的对象,允许创建该类型的新实例。每个类实例都可以附加属性以维护其状态。类实例也可以具有修改其状态的方法(由其类定义)。

与其他编程语言相比,Python 的类机制添加了具有最少新语法和语义的类。它混合了 C++ 和 Modula-3 中的类机制。 Python 类提供了面向对象编程的所有标准特性:类继承机制允许多个基类,派生类可以覆盖其基类或类的任何方法,方法可以调用同名基类的方法.对象可以包含任意数量和种类的数据。与模块一样,类具有 Python 的动态特性:它们是在运行时创建的,并且可以在创建后进一步修改

【讨论】:

  • 嗯,这就是oop语言中object的一般定义,在python中class也是object,你怎么解释?
  • @ccw 这意味着,就像在 Java 中一样,类由对象表示,对象也有方法和数据(例如,您可以询问类的名称)。 “一切都是对象”意味着在语言中,关于类、函数、整数、字符串没有什么特别的。没有不是对象的原始值(与 Java 不同),您可以传递函数(有点像 C++ 但与 Java 不同)。模块也是对象。我曾经写过代码来操作模块中的导入。 python 中的对象或多或少只是包含其他对象的字典。
猜你喜欢
  • 2012-01-22
  • 2011-02-25
  • 2019-10-12
  • 1970-01-01
  • 1970-01-01
  • 2018-09-18
  • 1970-01-01
  • 2016-05-31
  • 1970-01-01
相关资源
最近更新 更多