python---面向对象3--对象方法

 1 # 方法
 2 # 定义在类中的函数称为方法
 3 # 通过调用方式的不同,分为对象方法、类方法、静态方法、魔术方法
 4 
 5 
 6 class Point:
 7     """
 8     表示平面坐标系里的一个点
 9     """
10     name = ''  # 类属性
11 
12     # 定义在类里的普通函数就是对象方法
13     def my_point(self):
14         print('({}, {})'.format(self.x, self.y))
15 
16     def distance(self, p2):
17         return ((self.x - p2.x) ** 2 + (self.y - p2.y) ** 2) ** 0.5
18 
19 # 1.对象方法
20 # 定义在类中的普通函数,一般通过对象去调用
21 
22 # 调用对象方法
23 # 1.1 类名.方法名(参数) --- 不用
24 # 和普通的函数没有什么区别
25 # Point.x = 1
26 # Point.y = 2
27 # Point.my_point(Point)
28 
29 # 1.2 对象.方法名(参数) --- 常用
30 # 创建一个实例
31 # 通过对象去调用对象方法时,会隐式的把对象本身传递给方法的第一个参数
32 # 所以对象方法会把第一个参数命名为self
33 
34 
35 p = Point()
36 p.x = 1
37 p.y = 2
38 p.my_point()
39 
40 p1 = Point()
41 p1.x = 0
42 p1.y = 0
43 res = p.distance(p1)
44 print(res)
45 
46 
47 # """
48 # 定义一个函数my_print, 它接受一个Point类的对象,如何打印这个对象的x和y坐标
49 # """
50 #
51 #
52 # def my_point(point):
53 #     print('({}, {})'.format(point.x, point.y))
54 #
55 #
56 # ###
57 # """
58 # 定义一个函数distance,它接收两个Point对象,然后返回这两个点的距离
59 # """
60 #
61 #
62 # def distance(p1, p2):
63 #     return ((p1.x - p2.x)**2 + (p1.y - p2.y)**2)**0.5
64 #
65 #
66 # p = Point()
67 # p.x = 1
68 # p.y = 2
69 # my_point(p)
70 #
71 # p2 = Point()
72 # p2.x = 0
73 # p2.y = 0
74 #
75 # res = distance(p, p2)
76 # print(res)

 

posted @ 2022-03-07 16:47  WJ-HAHA  阅读(37)  评论(0编辑  收藏  举报