![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
初学者
半路出家的pn
代码代码
展开
-
迭代器的优势
在平时工作中,习惯于把一个或多个数据存储到一个变量中,然后在需要的时候使用for函数取出来使用。这样做会使计算机内存被严重消耗,那么可以使用只存储采集数据方法的类,在需要用到数据的时候调用这个采集数据方法,把数据采集到里面,然后使用的时候通过迭代的方法取数。 如果想使一个类的实例具有可迭代性,那么必须在里面定义私有方法:__inter__(self),并且有返回值,这个返回值会指向迭代器,即还要创建一个迭代器。创建迭代器的方法是,创建一个私有方法:__next__(self).这个迭代器是...原创 2021-09-16 11:45:32 · 439 阅读 · 0 评论 -
迭代判断及及迭代器
在Python3版本中,判断一个对象是不是可迭代(即是不是可以用for循环取数据),使用collections这个包终端isinstance来判断。 1、判断是否可迭代:原创 2021-09-16 11:10:58 · 579 阅读 · 0 评论 -
定义类属性和类方法、静态方法
一、类的属性除了实例属性(__init__(self,)中定义的属性),还有类属性。类属性的定义不在初始化方法中进行,在初始化方法外面进行定义。类属性可以在主题函数中直接用类名+‘.’的方式直接调用,不需要先实例再用实例+‘.’的方法进行调用。 二、方法中的静态方法和类方法 1、静态方法 这个方法和类的其他方法最明显的区别在于定义的方法小括号内是空,既不用写self也不用写cls。不过静态方法的定义需要在该方法的上一行写个声明,即为@staticmethod 2、类方法 顾名思义...原创 2021-09-07 18:23:03 · 847 阅读 · 0 评论 -
一个类的属性调用另一个类的实例
先定义一个类,然后初始化它的属性。比如士兵发射子弹,先定义一个士兵类,然后初始化两个属性,士兵的姓名和士兵手中的枪。 由于一开始不知道士兵会使用什么枪作战,所以士兵使用的枪初始化属性可以先被定义为None。 从上面的描述可知,枪是被调用的对象,所以先创建一个'枪'对象: 1.初始化枪类的属性,包括名称,子弹数目 2.创建一个添加子弹的方法和发射子弹的方法 创建一个士兵类,属性:名称、枪;方法:开火。由于一开始枪属性内容未知,可以先使它的值为None。然后在fire()...原创 2021-09-06 16:27:28 · 374 阅读 · 0 评论 -
一个类调的方法用另一个类的实例
在编写一个复杂类的时候,一个主要的大类的方法可以调用一个或多个小类的实例。类的实例就是一个变量,指向一个内存地址。一个类的方法调用另一个类的实例,即将一个类的实例当做形参传入,里面的内容指向这个实例所有的属性。 下面这个是家具的类 下面这个是房子这个类,里面有个方法add_iterm(self,ite)是添加家具,使用房子类的实例houseq来调用方法,然后将家具类的实例bed当做形参传入。 在编写类的时候,初始化内容包含所有实例化时需要传入的参数,对于不需要外界传入的参数可以先将参...原创 2021-09-06 15:37:02 · 500 阅读 · 0 评论