[uPyCraft IDE]MicroPython类 1.2.7

2020-2-26 15:46:14 [显示全部楼层]
1966浏览
查看: 1966|回复: 1

[uPyCraft IDE] MicroPython类 1.2.7

[复制链接]

类提供了将数据和功能捆绑在一起的函数。

1.2.7.1 类

类定义格式如下:

class <类名>:
类体

类中除了定义函数,还可以包含其他语句。一个类中的函数定义通常有一个特殊的参数列表形式,以在类外调用这个函数。

1.2.7.2 类对象

类支持两种操作:属性引用和实例化。

属性引用

调用类的属性:obj.name,name是类中定义的变量或函数的名字。
示例:

class MyClass:
  i=12345

  def f(self):
    print("hello world")

上面示例中MyClass.i和MyClass.f是有效的属性引用,分别引用一个整数和一个函数。

类实例化

示例:

x = MyClass()

上面的示例,创建该类的新实例并将对象分配给本地变量x。
一个类可以定义一个名为init()的特殊方法。

示例:

def __init__(self, data):
  self.data=23

当一个类定义了一个init()方法时,类会自动调用init()新创建的类实例。可以通过x=MyClass()的方式获得。在这种情况下,赋予类实例化的参数被传递给init()。

示例:

>>> class ComplexClass:
...   def __inis__(self, r, i):
...     self.r = r
...     self.i = i
...     print(self.r + self.i)
...     
...     
... 
>>> x = ComplexClass(3, 6)
9
>>> x.r, x.i
(3, 6)
实例对象

示例:

class Complex:
  def __init__(self, r, i):
    self.r = r
    self.i = i
    print(self.r + self.i)

x = Complex(3, 6)
x.counter = 1
while x.counter < 10:
    print("hello",x.counter)
    x.counter = x.counter * 2
print(x.counter)
del x.counter

运行结果:

9
hello 1
hello 2
hello 4
hello 8
16

DFrJ5KYVQaH  中级技匠

发表于 2020-2-27 08:19:25

系列教程学习中
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail