Python_类和对象_自定义类与属性
2021-04-30 16:30
标签:ted poi 存储 string 空间 png 实现 distance 创建对象 类和对象,主要是学习【面向对象编程】了,这种编程方法中,用户可以自定义类型来同时对代码和数据进行整理。 Python 有很多的内置类型,现在我们来自定义一个新的类型。 比如,创建一个叫 Point 的类,用于表示一个二维空间中的点。 数学符号上对点的表述一般是一个括号内有两个坐标,坐标用逗号分隔开。比如,(0,0)就表示为原点,(x,y)就表示了该点从原点向右偏移 x,向上偏移 y。 事实上,我们可以用好几种方法来在 Python 中表示一个点: • 可以把坐标存储成两个单独的值,x 和 y。 • 可以把坐标存储成列表或者元组的元素。 • 可以创建一个新的类型,用对象来表示点。 1.用户自定义的类型也被叫做一个类,如下所示: >>> class Point: ... """Represents a point in 2-D space.""" ... 头部代码的意思是表示新建的类名字叫 Point。然后类的体内有一个文档字符串,解释类的用途。在类的定义内部可以定义各种变量和方法。 声明一个名为 Point 的类,就可以创建该类的一个对象: >>> Point 因为 Point 是在顶层位置定义的,所以全名就是__main__.Point。 2.类的对象就像是一个创建对象的工厂。创建一个 Point,就可以像调用函数一样调用 Point。 >>> blank = Point() >>> blank <__main__.point object at> 返回值是到一个 Point 对象的引用,刚刚赋值为空白了。 创建一个新的对象也叫做实例化,这个对象就是类的一个实例。 用 Print 输出一个实例的时候,Python 会告诉你该实例所属的类,以及在内存中存储的位置 (前缀为0x 意味十六进制) 每一个对象都是某一个类的一个实例,所以【对象】和【实例】可以互换来使用。谈论用户自定义类型的时候,使用【实例】这个词更贴切一点。 1.用点号可以给实例进行赋值: >>> blank.x = 3.0 >>> blank.y = 4.0 这一语法形式就和从模块中选取变量的语法是相似的,比如 math.pi 或者 string.whitespace。 然而在本例中,我们用点号实现的,是对一个对象中某些特定名称的元素进行赋值,这些元素也叫做属性。 用于展示一个类及其属性的状态图也叫做类图,下面的图表展示了上面这些赋值的结果: 变量 blank 指代的是一个 Point 对象,该对象包含两个属性x和y,每个属性都指代了一个浮点数。 读取属性值可以用如下这样的语法: >>> blank.y 3.0 >>> y = blank.y >>> y 3.0 这里的表达式 blank.y 的意思是,到 blank 所指代的对象中,读取 y 的值。 在这个例子中,我们把这个值赋值给一个名为 y 的变量。这里的变量 y 和类的属性y 并不冲突。 2.另外,点号可以随意在任意表达式中使用,比如: >>> blank.x = 3.0 >>> blank.y = 4.0 >>> ‘(%g, %g)‘ % (blank.x, blank.y) ‘(3, 4)‘ >>> import math >>> distance = math.sqrt(blank.x**2 + blank.y**2) >>> distance 5.0 3.我们还可以把实例作为一个参数来使用,比如: >>> def print_point(p): ... print(‘(%g, %g)‘ % (p.x, p.y)) ... >>> print_point(blank) (3, 4) 这个例子中,print_point 这个函数就接收了一个点作为参数,然后显示点的平面数值位置。 在函数内部,p 是blank 的一个别名;所以,如果函数内部对 p 进行了修改,blank 也会发生相应的改变。 结束。 Python_类和对象_自定义类与属性 标签:ted poi 存储 string 空间 png 实现 distance 创建对象 原文地址:https://www.cnblogs.com/liusingbon/p/13226433.html一,用户自定义类型
二,属性
上一篇:排序算法
下一篇:课堂测试web写注册界面
文章标题:Python_类和对象_自定义类与属性
文章链接:http://soscw.com/index.php/essay/80479.html