def use_range(): """python内置range函数""" for i in range(5, 10): print(i) class IterateRange(object): """使用迭代器模拟range函数""" def __init__(self, start, end) ...
分类:
编程语言 时间:
2020-04-22 14:48:58
阅读次数:
73
以植物大战僵尸为例,来练习在类中的各种调用 import random class PlantsVSZombies: """ 植物大战僵尸 """ top_score = 0 # 默认最高分数 def __init__(self, playser_name): """ 玩家有什么特征 :param ...
分类:
编程语言 时间:
2020-04-21 13:25:12
阅读次数:
213
一、使用__slots__ 1. 创建 的实例后,可以给该实例绑定任何属性和方法,这还少动态语言的灵活性。 2. 针对于单个实例绑定的方法,对于其他实例不起效,给 绑定才能对所有实例起效。 3. 可以使用 变量来限制class实例能添加的属性。 4. 使用 需要注意的是定义的属性仅对当前类实例起作用 ...
分类:
编程语言 时间:
2020-04-18 22:42:54
阅读次数:
77
[TOC] 面向对象程序设计 结构化程序设计的缺点 我们为什么要有面向对象程序设计呢?我们使用 C 语言只能实现结构化程序设计,所谓结构化程序设计就是“ 程序 = 数据结构 + 算法 ”,而在程序中会有很多可以相互调用的函数和全局变量。 但是我们可以显然地看出,这种编程风格存在不少缺点。首先由于函数 ...
分类:
编程语言 时间:
2020-04-17 21:58:28
阅读次数:
161
介绍 1. 是使用一种普通函数语法定义的迭代器 2. 包含yield语句的函数都被称为生成器 3. 不使用returen返回一个值,而是每次可以生成多个值,每次一个 4. 每次使用yield生成一个值后,函数都将冻结,即在此停止执行 5. 被重新唤醒后,函数将从停止的地方开始继续执行 """ 生成器 ...
分类:
编程语言 时间:
2020-04-15 21:36:13
阅读次数:
83
一 什么是面向对象的继承 比较官方的说法就是: 继承(英语:inheritance)是面向对象软件技术当中的一个概念。如果一个类别A“继承自”另一个类别B,就把这个A称为“B的子类别”,而把B称为“A的父类别”也可以称“B是A的超类”。继承可以使得子类别具有父类别的各种属性和方法,而不需要再次编写相 ...
分类:
编程语言 时间:
2020-04-15 18:11:32
阅读次数:
64
一.Python 类的空间问题 1.1 何处可以添加对象属性 总结:对象的属性不仅可以在__init__里面添加,还可以在类的其他方法或者类的外面添加。 1.2 何处可以添加类的静态属性 总结:类的属性不仅可以在类内部添加,还可以在类的外部添加。 1.3 对象如何找到类的属性 之前咱们都学习过,实例 ...
分类:
编程语言 时间:
2020-04-15 17:49:06
阅读次数:
50
1. 用于拓展原来函数功能的一种函数 2. 返回函数的一种函数 3. 在不用更改原函数代码的前提下给函数添加新的的功能 (1)没有装饰器时的实现 """ 不用装饰器的情况 """ def hello(): print("hello...") def test(): print("test...") ...
分类:
编程语言 时间:
2020-04-15 16:28:39
阅读次数:
75
注意:若同时继承的父类中有重名的方法,那么只会调用第一个,后面一个就不会调用了,所以在设计的时候,需要避免出现这样的错误 class BaseCat(object): """ 猫科动物的基础类 """ tag = "猫科动物" def __init__(self, name): self.name ...
分类:
编程语言 时间:
2020-04-14 18:35:41
阅读次数:
75
一、python面向对象编程的三大特性 Python是面向对象的语言,也支持面向对象编程的三大特性:封装、继承、多态。 封装:封装,顾名思义就是将内容封装到某个地方,以后再去调用被封装在某处的内容。隐藏对象的属性和实现细节,只对外提供必要的方法,减少代码冗余,提高代码复用。 继承:Python支持单 ...
分类:
编程语言 时间:
2020-04-14 10:33:23
阅读次数:
84