Excel不相邻列如何打印在一起-英雄云拓展知识分享
137
2023-11-07
【摘要】 本书摘自《Python学习笔记 从入门到实战》一书中第7章,第4节,由张学建编著。
7.4.3 方法调用
方法调用就是调用创建的方法,在Python程序中,类中的方法既可以调用本类中的方法, 也可以调用全局函数来实现相关功能。调用全局函数的方式和面向过程中的调用方式相同, 而调用本类中的方法时应该使用如下所示的格式:
self. 方法名(参数列表)
在 Python 程序中调用本类中的方法时,读者需要注意的是,应该在提供的参数列表中 包含 “self” 。 例如在下面的实例中,演示了在类中调用类的自身方法和全局函数的过程。
实例7-6:在类中调用类的自身方法和全局函数
源码路径:下载包\daima-6
def diao(x,y):
return(abs(x),abs(y))
class Af _if=0,y=0):
self.d_point()
def yi(,d,(x,y)
self.e_point(x,y)
self.d_point()
def e_py):
def d_point(self):
print(" 移动轨迹是:(%d,8d)" 名 (self.x,self.y))
ant_a =Ant()
ant_a.yi(2,7)
在上述实例代码中,首先定义了一个全局函数 diao), 然后定义了类 “Ant”, 并在类中 定义了一个构造方法,并且在构造方法中也调用了类中的其他方法d_point)。然后在定义方 法yiO 的同时调用了全局函数diao) 和类中的两个方法e_point() 和 d_point()。在代码行“ant_ a=Ant)” 中,因为在初始化类Ant 类时没有给出参数,所以运行后使用了默认值“0,0”。 因为在代码行“ant_a.yi(2,7)” 中提供了参数“2,7”,所以位置变为(2,7)。在代码行“ant_ a.yi(-5,6)” 中提供了参数“-5,6”,所以位置变为了(7,13)。执行后会输出:
7.4.4 创建多个实例
在 Python 程序中,可以将类看作是创建实例的一个模板。只有在类中创建实例,这个 类才变得有意义。例如在本章前面的实例7-5中,类Dog 只是一系列说明而已,让 Python 知道如何创建表示特定“宠物狗”的实例。而并没有创建实例对象,所以运行后不会显示任 何内容。要想使类Dog 变得有意义,可以根据类Dog 创建实例,然后就可以使用点“.”符 号表示法来调用类Dog 中定义的任何方法。并且在Python程序中,可以按照需求根据类创
建任意数量的实例。例如在下面的实例中,演示了在类中创建多个实例的过程。
实例7-7:创建多个不同的对象实例
在上述实例代码中,使用了前面实例7-5中定义的类Dog, 在第13行代码中创建了一 个name 为“大狗”、age 为“6”的小狗狗,当运行这行代码时, Python 会使用实参“大狗” 和“6”调用类Dog 中的方法 init ()。方法 n it )会创建一个表示特定小狗的实例,
并使用我们提供的值来设置属性 name 和 age。另外,虽然在方法 init ()中并没有显式地 包含return 语句,但是Python 会自动返回一个表示这条小狗的实例。在上述代码中,将这个 实例存储在变量 my_dog中。
而在第14行代码中创建了一个新的实例,其中name 为“小狗”,age 为“3”。第13 行中的小狗实例和第14行中的小狗实例各自独立,各自有自己的属性,并且能够执行相同 的操作。例如在第15、16、17行代码中,独立输出了实例对象“my_dog” 的信息。而在第 18、19、20行代码中,独立输出了实例对象 “your_dog” 的信息,执行后会输出:
7.4.5 使用私有方法
在 Python 程序中也有“私有”这一概念,与大多数的语言不同, 一个Python 函数、方 法或属性是私有还是公有,完全取决于它的名字。如果一个 Python 函数、类方法或属性的 名字以两个下画线“ ”开始(注意,不是结束),那么这个函数、方法或属性就是私有的, 其他所有的方式都是公有的。当在类的内部调用私有成员时,可以用点“.”运算符实现,例 如在类的内部调用私有方法的语法格式如下所示。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 18664393530@aliyun.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~