随笔分类 - python基础
摘要:无论谁写的程序,必定会存在bug,解决bug需要我们去调试程序。于是乎,在Python中,就会好几种调试手段,如print、assert、logging、pdb、pdb.set_trace() 一、使用print()函数直接打印 我们可以在认为可能出错的地方打印变量,但这有很大的弊端,因为打印的代码
阅读全文
摘要:长期以来都想用python对Excel进行一些列的操作,但由于某种神秘的力量控制着我,一直未果,今天有幸用requests模块和BeautifulSoup模块进行爬虫练习,拿到了一大批数据,照我以前,都只是用字典啊、列表啊,或者文本文件存放,之前没觉得哪里不好,但今天的我很奇怪,怎么看怎么不爽,而且
阅读全文
摘要:我们定义变量会申请内存空间来存放变量的值,而内存的容量是有限的,当一个变量值没有用了(称为垃圾),就应该将其占用的内存给回收掉。变量名是访问到变量的唯一方式,所以当一个变量值没有任何关联的变量名时,我们就无法访问到该变量了,该变量就是一个垃圾,会被python解释的垃圾回收机制自动回收。 一、什么是
阅读全文
摘要:一、装饰器 装饰器本质就是一个python函数,它可以让其他函数在不需要做任何代码变动的前提下,增加额外的功能,装饰器的返回值也是一个函数对象。装饰器的应用场景:插入日志,性能测试,事务处理,缓存等场景 二、装饰器的形成过程 现在有个需求,想让你测试这个函数的执行时间,在不改变这个函数的情况下。 1
阅读全文
摘要:一,什么是包 包是⼀种通过 '.模块名'来组织python模块名称空间的⽅式. 那什么样的东西是包呢? 我 们创建的每个文件夹都可以被称之为包. 但是我们要注意, 在python2中规定. 包内必须存在 __init__.py⽂文件. 创建包的目的不是为了了运⾏, ⽽是被导入使用. 包只是一种形式而
阅读全文
摘要:一,模块 模块就是一个包含了python定义和声明的文件,文件名就是模块的名字加上.py后缀,总体来说,import加载的模块一共分成四个通用的类别: 1,使用python编写的py文件 2,已被变异为共享或者DLL或者C++的扩展 3,包好一组模块的包 4,使用c编写并连接到python解释器的内
阅读全文
摘要:一,正则表达式 正则表达式是对字符串操作的一种逻辑公式,我们一般使用正则表达式对字符串进行匹配和过滤,使用正则的优缺点,我们可以去http://tool.chinaz.com/regex/进行测试。 优点:灵活,功能性强,逻辑性强 缺点:上手难,一旦上手,使用起来很方便 正则表达式由普通字符和元字符
阅读全文
摘要:一,序列化 在我们存储数据或者网络传输数据的时候,需要对我们的对象进行处理,把对象处理成方便存储和传输的数据结构,这个过程叫序列化,不同的序列化,结果也不同,但是目的是一样的,都是为了存储和传输。 在python中存在三种序列化的方案。 1,pickle,可以将我们python中的任意数据类型转化成
阅读全文
摘要:一,模块的简单认识 模块就是我们把装有特定功能的代码进行归类的结果,从代码编写的单位来看我们的程序,从小到大的顺序:一条代码<语句块<代码块(函数,类)<模块。我们目前写的所有的py文件都是模块。 引入模块的方式: 1,import模块 2,from xxx import模块 二,collectio
阅读全文
摘要:一,python2和python3的区别 在python2中存在两种类:一个叫经典类,在python2.2之前,一直用的是经典类,经典类如果在基类的根什么都不写,那么它就是根;还有一个叫新式类,在python2.2之后出现的,新式类的特点就是所有基类的根都是object。 在python3中只存在新
阅读全文
摘要:写法: 实例: 自定义异常: 非常简单. 只要你的类继承了了Exception类. 那你的类就是⼀一个异常类. 就这 么简单 最后可以引入一个模块traceback,这个模块可以获取到我们每个方法的调用信息,又被称为堆栈信息。再用traceback.format_exc()方法就可以看到报错信息。
阅读全文
摘要:1,导入logging模块 2,简单配置一下logging 3,出现异常的时候(except),向日志写错误信息 其次,,,,
阅读全文
摘要:1,提取父类,然后在父类中定义好方法,在这个方法中什么都不用干,就抛出一个异常就可以了。这样所有的子类都必须重写这个方法,否则,访问的时候就会报错。 2,使用元类来描述父类,在元类中给出一个抽象方法,这样子类就不得不给出抽象方法的具体实现,也可以起到约束的效果。 如果我们写一个方法,不知道方法的内部
阅读全文
摘要:MD5是一种不可逆的加密算法,它是可靠的,并且安全的。在python中不用手写这一套算法,只需要引入一个叫hashlib的模块就能搞定MD5的加密工作。 这样操作也不是最安全的,因为 我们可以通过以下方法解决此问题,加盐就可以,但是一套系统中,盐不能随便变的 应用
阅读全文
摘要:一,面向对象和面向过程(重点理解) 面向过程:一切以事物的流程为中心,核心是过程二字,过程是指解决问题的步骤,即先干什么,后干什么,基于该思想编写程序就好比在编写一套流水线,是一种机械式的编程思维。优点:流程化,编写相对简单;缺点:可扩展性差 面向对象:具有相同属性和动作的结合体叫对象,面向对象思维
阅读全文
摘要:一,匿名函数 lambda表⽰示的是匿名函数. 不需要⽤用def来声明, ⼀一句句话就可以声明出⼀一个函数 语法: 函数名 = lambda 参数: 返回值 注意: 1. 函数的参数可以有多个. 多个参数之间⽤用逗号隔开 2. 匿名函数不管多复杂. 只能写⼀一⾏行行, 且逻辑结束后直接返回数据 3.
阅读全文
摘要:https://www.processon.com/mindmap/5bdc15a4e4b00cdc18c91ae2
阅读全文
摘要:一、闭包 闭包就是在内层函数中引用外层函数的变量 作用:1.保护变量不受侵害 2.让一个变量永驻内存 二、迭代器 Iterator:迭代器,包含_iter_()和_next_()函数 Iterable:可迭代的,只包含_iter_() 用while来演示for循环的实际流程 从迭代器中获取数据的唯一
阅读全文
摘要:(1)书写过程 开头部分:\033[显示方式 ;前景色;背景色m 结尾部分:\033[0m (2)参数 *显示方式:0(默认值),1(高亮),22(非粗体),4(下划线),24(非下划线),7(反显),27(非反显) *前景色: 30(黑色),31(红色),32(绿色),33(黄色),34(蓝色),
阅读全文

浙公网安备 33010602011771号