摘要: 元类 python一切皆对象,类实际上也是一个一个对象 类是一个对象,那他一定是由一个类实例化得到,这个类就叫元类 如何找元类 常规的class 类名 会把类构造出来,实际上是元类实例化产生类这个对象, Person类是对象,一定是由一个类实例化产生的,所以type()产生对象,调用_\_init_ 阅读全文
posted @ 2019-09-03 23:08 Micheal_L 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 一等公民:只要可以把一个东西赋值给一个变量,这个东西就叫一等公民 断点调试 在想要加断点的地方用鼠标点击一下,会看到一个红色圆圈 变红的地方,程序执行到,就会暂停 断点应该加在报错之前,在错误代码上放断点进行调试 向下绿色箭头是单步调试 右下角色绿色三角形是快速调到下一个断点执行 控制台报错,点击你 阅读全文
posted @ 2019-09-03 16:54 Micheal_L 阅读(299) 评论(0) 推荐(0) 编辑
摘要: 面向对象基础 继承 如何使用继承 ​ class 类名(父类1,父类2): ​ pass 本质 ​ 是一种新建类的方式,继承了一个类,类中的属性和方法就在子类中 父类/基类 子类/派生类 新式类 ​ 只要继承了object类,就是新式类,在python3中,默认继承object类 ​ python2 阅读全文
posted @ 2019-09-01 22:21 Micheal_L 阅读(163) 评论(0) 推荐(0) 编辑
摘要: 面向对象和面向过程 面向过程 ​ 概念:就是把对一个问题的解决通过一系列过程的来实现的(例如我要从北京去上海,那我第一步要先去天津,第二步去山东。。。。最后到上海) ​ 优点:复杂问题流程化 ​ 缺点:可扩展性差 面向对象 ​ 概念:就是把对一个问题的解决通过对象间的协作实现的(例如我要从北京去上海 阅读全文
posted @ 2019-08-26 22:45 Micheal_L 阅读(149) 评论(0) 推荐(0) 编辑
摘要: ```python ''' 1.实现用户传入一个普通字符串, 返回字符串的md5加密结果的函数 ''' import hashlib def M(str): m = hashlib.md5() m.update(str.encode('utf8')) return m.hexdigest() s = 阅读全文
posted @ 2019-08-23 21:10 Micheal_L 阅读(163) 评论(0) 推荐(0) 编辑
摘要: ATM + 购物车 需求分析 一个项目是如何从无到有的 程序架构 程序目录设计 程序模块 注意点 阅读全文
posted @ 2019-08-22 18:18 Micheal_L 阅读(321) 评论(0) 推荐(1) 编辑
摘要: 包 ​ 包可以把一个模块分成多个文件同样的导入方式即可,用了包之后导入方式不变,使用者感觉不到变化。包其实是一个文件夹(必须得含有_\_init__.py 这个文件) ​ 导包就是导入init ​ 包的文件以执行文件的环境变量为基准,包的init只能从包名开始导入 time模块 ​ 支持三种不同形式 阅读全文
posted @ 2019-08-16 17:32 Micheal_L 阅读(210) 评论(0) 推荐(0) 编辑
摘要: 模块的四种形式 1. 自定义模块,例如自己定义的common.py就叫common模块 2. 内置模块:python解释器自带的,不需要安装 3. 第三方模块:需要自己安装,13万个库,无所不能,写库(弄得更简单) 4. 包— 含有_\_inti__.py的文件夹,一种特殊的模块(解决了一个问题) 阅读全文
posted @ 2019-08-15 16:05 Micheal_L 阅读(365) 评论(0) 推荐(0) 编辑
摘要: 递归:函数调用自身 核心:递进的时候能够达到一个结果,问题规模越来越小(不一定要真正的达到);设置一个条件,能够让最后一次函数调用结束 练习: ​ 第一个人的姓名是16岁,后面每个人的年龄都比前一个大2岁,求第6个人的年龄 常见内置方法 阅读全文
posted @ 2019-08-14 15:47 Micheal_L 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 三元表达式/列表推导式/字典生成式 只是让你的代码少一些,但是逻辑没发生变化 三元表达式 列表推导式 字典生成式 生成器 阅读全文
posted @ 2019-08-13 21:03 Micheal_L 阅读(134) 评论(0) 推荐(0) 编辑