Python进阶(六) 装饰器 一丶开放封闭原则 开放原则: ? 增加一些额外的新功能 封闭原则: ? 不改变源码.以及调用方式 二丶初识装饰器 装饰器: ? 也可称装饰器函数,诠释开放封闭原则,装饰器的本质是闭包 三丶被装饰器数带返回值 四丶被装饰函数带参数 五丶标准终终结版装饰器 ...
分类:
编程语言 时间:
2019-06-24 16:22:40
阅读次数:
78
[TOC] 异常TODO 万能捕捉异常公式 division by zero 深浅拷贝 拷贝 拷贝/浅拷贝/深拷贝都是针对可变类型数据而言的 如果l2是l1的拷贝对象,则l1内部的任何数据类型的元素变化,则l2内部的元素也会跟着改变,因为可变类型值变id不变 浅拷贝 如果l2是l1的浅拷贝对象,则l ...
分类:
编程语言 时间:
2019-06-22 20:04:03
阅读次数:
126
[TOC] Python进阶实战之三级菜单 1. 打印省、市、县三级菜单 2. 可返回上一级 3. 可随时退出程序 面条版 北京 上海 山东 第一层 : 背景 北京 上海 山东 第一层 : 北京 海淀 昌平 朝阳 东城 第二层 : 海淀 五道口 中关村 上地 第三层 : 中关村 爱奇艺 汽车之家 y ...
分类:
编程语言 时间:
2019-06-22 19:48:00
阅读次数:
112
一、####用logging的四大组件来实现日志的功能 - 打印出函数执行的时间,日志的等级,日志的消息 - 用装饰器 - 不同的日志,要记录不同等级的日志消息 import logging logger = logging.getLogger("mylogger") logger.setLevel ...
分类:
编程语言 时间:
2019-06-21 15:38:56
阅读次数:
101
### logging - logging.debug - logging.info - logging.warning - logging.error - logging.critical import logging logging.basicConfig(level=logging.DEBUG ...
分类:
编程语言 时间:
2019-06-21 12:47:32
阅读次数:
114
一、####编写一个程序,统计当前目录下每个文件类型的文件数 ####思路: - 打开当前的文件夹 - 获取到当前文件夹下面所有的文件 - 处理我们当前的文件夹下面可能有文件夹的情况(也打印出来) - 做出统计 import os #获取到当前文件夹下面所有的文件all_files = os.lis ...
分类:
编程语言 时间:
2019-06-20 17:18:01
阅读次数:
277
一、编写一个计算减法的方法,当第一个数小于第二个数时,抛出“被减数不能小于减数”的异常 def jianfa(a, b): if a < b: raise BaseException("被减数不能小于减数") else: return a - b try: jianfa(3, 7)except Ba ...
分类:
编程语言 时间:
2019-06-19 16:32:58
阅读次数:
1050
"==" 与 is python 为 10 开辟内存空间, a与b同时指向这块内存,即a与b的值相等,a与b的id也相等.因此 a==b 与 a is b 都返回True: 在[-5,256]范围内的整数会有上面代码的性能优化,而不在这范围内的数字就会重新开辟内存空间。 实验证明,下面代码只在终端中 ...
分类:
编程语言 时间:
2019-06-13 20:38:13
阅读次数:
122
Namespace命名空间,命名空间是一个字典(dictionary),它的键就是变量名,它的值就是那些变量的值。命名空间的一大作用是避免名字冲突。 python使用命名空间记录变量的轨迹。python中有三个命名空间: ...
分类:
编程语言 时间:
2019-05-30 12:09:11
阅读次数:
158
并发编程-进程与线程 什么是进程(process)? 进程(process),是计算机中已运行程序的实体,是线程的容器;一个进程至少有一个线程 假如有两个程序A和B,程序A在执行到一半的过程中,需要读取大量的数据输入(I/O操作),而此时CPU只能静静地等待任务A读取完数据才能继续执行,这样就白白浪 ...
分类:
编程语言 时间:
2019-05-26 18:09:28
阅读次数:
123