乐高python编程入门——类及其属性和方法

类是面向对象语言的程序设计中的概念,是面向对象编程的基础。类的实质是一种引用数据类型,类似于 byte、short、int(char)、long、float、double 等基本数据类型,不同的是它是一种复杂的数据类型。因为它的本质是数据类型,而不是数据,所以不存在于内存中,不能被直接操作,只有被实例化为对象时,才会变得可操作。(来自“百度百科”)


在学习类之前我们先来熟悉一下面向过程和面向对象。

01

面向对象和面向对象

面向过程与面向对象是两种编程风格、思想;

  1. 面向过程是基于流程的,将所要处理的事情细分到一个个小的步骤,然后按照顺序依次执行,每一个步骤都可以采用一个函数来实现,这个思路比较符合我们现实中处理事情的方式;
  2. 缺点就是前后事务关联性较大,后期维护成本高;
  3. 优点是效率高,结构清晰
  4. 面向过程是一种基础的思维方法


与面向过程强调流程和步骤不同的是,面向对象更关注对象,也就是“谁”做什么事情,将要做的处理的事情分解到不同的对象,不同的对象通过方法来处理其所要负责的部分

  1. 面向对象的基础是对象,对象是类的实例化,类是对象的抽象化;
  2. 类,顾名思义就是分类,将现实生活具有相同特征的事物进行抽象化,比如越野车、小轿车、商务车都可以归为车这一类;
  3. 在python中,类也是一种数据类型,只不过是一种复杂的数据类型;


02


类包含属性和方法,属性描述类的特性,方法描述类的行为。


比如上面例子中的类:车

属性有:长、宽、高、功率

方法有:启动,停止、前进、转弯


我们用

class ClassName:
    code

来定义类,用

def methodName():
    code

来创建类的方法。


我们来创建一个类:

import math


class myCircle():
    def __init__ (self,a=0,b=0,c=0):
        self.x=a
        self.y=b
        self.r=c
    
    def getCircleArea(self):
        return self.r**2*math.pi
    
    def getDistenceFromO(self):
        return math.sqrt(self.x**2+self.y**2)


    def getX(self):
        return self.x
    
    def getY(self):
        return self.y
    
    def getR(self):
        return self.r


这个类是用来描述一个圆,有属性x,y和r,分别代表圆心的坐标和圆的半径,有方法getX(),getY(),getR(),getCircleArea()以及getDistenceFromO()

用来获取圆的三个属性以及计算圆的面积和圆心到原点的距离。


创建好类之后,我们来运用类。

a=myCircle(3,4,5)
print(a.getX())
print(a.getY())
print(a.getR())


print(a.getDistenceFromO())
print(a.getCircleArea())

上面的a是类myCircle实例化的一个对象,然后来调用a的方法,我们看结果:




03

SPIKE中的类


在乐高的编程中,我们的集线器hub,以及所有的传感器和硬件在python中其实都是被封装好的类,我们直接调用就可以,这就是在SPIKE中进入python编程页面上面默认的几行代码的含义;

我们无须知道这些类具体是如何定义编写的,我们只需要掌握如何运用这些类以及其中的方法就行,具体的可以参考SPIKE中的知识库:

相关文章

python入门038:创建类

一、面向对象编程1、面向对象编程(Object-oriented Programming简称 OOP)python 是面向对象的编程语言。面向对象编程是一种封装代码的方法。代码封装,其实就是隐藏实现功...

python创建类的方法实例

创建一个学生类:数据:(姓名,姓别,年龄 ,分数)形为:打印信息'''class Studons:def __init__(self,name,xibie,nianling,f...

一日一技:在Python中创建类和对象

要创建一个类,请使用关键字class,如下:class MyClass: x = 5 print(MyClass)打印出结果:<class '__main__.MyClass...

一、Python 中类的定义、创建、使用

Python 界的领袖 Tim Peters 说的:元类就是深度的魔法,99% 的用户应该根本不必为此操心。如果你想搞清楚究竟是否需要用到元类,那么你就不需要它。那些实际用到元类的人都非常清楚地知道他...

python入门040:根据类创建实例

一、创建实例1、类的实例化定义的类只有进行实例化,也就是使用该类创建实例(对象)之后,才能得到使用。创建类实例(对象)的过程,又称为类的实例化。其语法格式为:类名(参数)在上面的程序中,我们首先创建了...

Python-15-类的定义和使用

类是什么?官方定义类提供了一种组合数据和功能的方法。创建一个新类意味着创建一个新的对象 类型,从而允许创建一个该类型的新 实例 。每个类的实例可以拥有保存自己状态的属性。一个类的实例也可以有改变自己状...