OOP上最直观的博客
#初学者 #教程 #python #oop

深刻的介绍

欢迎您在dev.to上找到的面向对象的编程(OOP)上最直接,最直观的博客。该博客系列(第1部分)旨在为您提供对主题的清晰了解。

让我们开始

我们将从Python中的代码块开始:

l = [1, 2, 3, 4, 5]
print(l.upper())

您认为输出是什么?令人惊讶的是,这将导致错误:

'list' object has no attribute 'upper'

现在,让我们在这里关注两个关键术语:“对象”和“属性”。

当您了解到列表是datatypeðä时,您可能想知道为什么错误将list: l称为“对象”。另外,“属性”是什么意思?让我们使用另一个代码块进一步探索:

l = [1, 2, 3, "oops"]
print(type(l))
# Output: <class 'list'>

有趣的吧?当我们尝试获取列表的类型时,它说“ l属于类'列表'。”但是什么是“班级”?

片刻前,我们看到一个错误提到“列表”是一个对象。让我们澄清一下这种混乱。

类,对象和属性

这是真实的时刻:您在Python中遇到的每个数据类型实际上都是一个类。

什么是班级?

您可以将班级视为蓝图,但是蓝图我的意思是什么?我们很快就会发现。

因此,每个数据类型都是类,每当我们创建类(数据类型)的变量时,它都会称为object

顺便说一句,现在我们知道数据类型是类,并且由于它们已经存在,因此数据类型被称为内置类。另一方面,我们有用户定义的类,我们将在另一个博客中探索。

因此,如果您尝试打印type(12),则输出将为class <int>。如果您创建了类/datatype int的对象:

n = 1234  # n is an object of datatype int
print(n.append(1))

上述代码将导致错误:

AttributeError: 'int' object has no attribute 'append'

此错误告诉我们,我们创建的n的对象被称为int class/datatype的对象。

用更简单的话来说,一个对象是类的实例。

我们知道我们不能附加到int,但是为什么?

因为谁创建了int或datatype int的人都没有添加功能。对象的功能或我们可以在特定类的对象上执行的功能称为attribute

在上述代码的输出中,您可能会看到错误消息:
AttributeError: 'int' object has no attribute 'append'

这表明int类的int object n没有任何功能可以附加。

现在就全部!我们将尽快介绍更多主题,因此请继续关注,好友!