python高级
笑-笑-生
这个作者很懒,什么都没留下…
展开
-
python给pdf右上角盖章
# function:给pdf添加水印、公章from PyPDF2 import PdfFileWriter, PdfFileReader# 所有路径为绝对路径def add_watermark(pdf_file_in, pdf_file_mark, pdf_file_out): pdf_output = PdfFileWriter() pdf_input = PdfFileReader(open(pdf_file_in, 'rb')) # # PDF文件被加密了 .原创 2020-12-02 18:49:25 · 2425 阅读 · 2 评论 -
详解python logging 模块发邮件
工作中需要及时解决线上的 bug,所以,及时获取 log 中的 warning,error 是非常有必要的,在查找资料的过程中发现了logging.handlers.SMTPHandler可以实现日志发送到邮件,通过简单的配置就可以使用,不必自己再烦心重写。1、SMTPHandler默认情况下不支持SMTPSimport loggingimport logging.handlersdef get_logger(logger_name, logger_level, logger_loc.原创 2020-06-10 15:52:14 · 1069 阅读 · 0 评论 -
Python 导包问题
报错如下:在同级目录里面文件dealer导入另一个文件dealerloginHistory的一个类DealerLoginHistory在dealerloginHistory文件里面并没有导入dealer文件,所以不可能是循环导包问题 难道是导包方式不对?我又改成:from . import DealerLoginHistory然后试了一下,还是一样的异常...原创 2019-02-18 11:59:15 · 426 阅读 · 0 评论 -
单元测试
为什么要测试?Web程序开发过程一般包括以下几个阶段:[需求分析,设计阶段,实现阶段,测试阶段]。其中测试阶段通过人工或自动来运行测试某个系统的功能。目的是检验其是否满足需求,并得出特定的结果,以达到弄清楚预期结果和实际结果之间的差别的最终目的。测试的分类:测试从软件开发过程可以分为:单元测试、集成测试、系统测试等。在众多的测试中,与程序开发人员最密切的就是单元测试,因为单元测试是由开发人员进行的...原创 2018-06-01 17:22:22 · 609 阅读 · 1 评论 -
Restful设计风格
2000年,Roy Thomas Fielding博士在他的博士论文《Architectural Styles and the Design of Network-based Software Architectures》中提出了几种软件应用的架构风格,REST作为其中的一种架构风格在这篇论文中进行了概括性的介绍。REST:Representational State Transfer的缩写,翻译...原创 2018-06-01 17:16:08 · 237 阅读 · 0 评论 -
网站性能
一、不同角度的网站性能 普通用户认为的网站性能 网站性能对于普通用户来说,最直接的体现就是响应时间。用户在浏览器上直观感受到的网站响应速度,即从客户端发送请求,到服务器返回响应内容的时间。 做为网站开发人员来说,网站性能通常会和普通的用户理解的不一样。 普通用户感受到的网站性能,并不只是由网站服务器决定的。它还包括客户端计算机和服务器通信的时间,网站服务器处理响应的时间,客户端浏览器构造请求解析...原创 2018-06-19 08:43:38 · 1354 阅读 · 0 评论 -
Django的ORM vs flask的SQLAlchemy
什么是 ORM?在介绍 Python 的 ORM 框架(Django 和 SQLAlchemy)不同之前,我们先要确保完全理解 ORM 框架的用途。ORM 代表对象关系映射(Object Relational Mapping)。让我们依次看看这三个单词,它们正好解释了 ORM在真实环境中的用处:● 对象 – 这部分表示使用框架的对象和编程语言,例如 Python。● 关系 – 这部分表示正在使用的...转载 2018-05-15 21:37:59 · 1663 阅读 · 0 评论 -
Python垃圾回收机制 总结
Python 内存管理机制和垃圾回收机制内存管理Python中的内存管理机制的层次结构提供了4层,其中最底层则是C运行的malloc和free接口,往上的三层才是由Python实现并且维护的。第一层则是在第0层的基础之上对其提供的接口进行了统一的封装,这是因为虽然不同的操作系统都提供标准定义的内存管理接口,但是对于某些特殊的情况不同的操作系统都不同的行为,比如说调用malloc(0),有的操作系统...转载 2018-05-15 16:15:22 · 163 阅读 · 0 评论 -
正则表达式
一、 正则表达式概述 1. 作用: 1. 数据抓取,数据的清理 : 在网上抓取图片,清除网站中不雅的评论 2. 数据验证,比如验证邮箱的合法性,手机号码的合法性 ,11位数字 2. 特点:通用性,跨语言 主流语言都有正则表达式,而且表达式的规则都几乎相同的 二、 re模块 提示: 命令行: ctrl+e :到命令行的尾部 ...原创 2018-05-21 11:55:17 · 1372 阅读 · 0 评论 -
linux基本使用二
linux命令基本使用 1. 重定向命令 Linux允许将命令执行结果重定向到一个文件,本应显示在终端上的内容保存到指定文件中 a> 重定向命令1 > ls > files1.txt 1. 把当前显示的目录和文件信息重定向到filess1.txt文件中 无则创建,有则打开,且是覆盖的模式 b> 重定向命令2 >> ...原创 2018-05-21 11:38:01 · 437 阅读 · 0 评论 -
linux基本使用一
linux命令的基本使用 1. 为什么使用linux命令 a> 像黑客一样,高大上 b> 命令比图形界面更快,功能更全 c> 对于linux的管理和维护都是通过远程终端来实现的,而远程终端都是用命令来操作的 d> 不好命令,就不好linux 2. linux命令体验 1. ls: 查看目录和文件 2. pwd:查看当前目录的绝对路径 3. cd :切换目录 ...原创 2018-05-21 11:33:36 · 281 阅读 · 0 评论 -
常见问题__数据库、网络
本文借鉴了http://python.jobbole.com/85231/,然后总结了自己的见解数据库1 事务(ACID)数据库事务(Database Transaction) ,是指作为单个逻辑工作单元执行的一系列操作,要么完全地执行,要么完全地不执行。原子性(Atomic):事务必须是原子工作单元;对于其数据修改,要么全都执行,要么全都不执行。一致性(Consistent):事务在完成时,必须...原创 2018-05-19 12:43:41 · 705 阅读 · 0 评论 -
python常见问题__操作系统
1 select,poll和epoll其实所有的I/O都是轮询的方法,只不过实现的层面不同罢了.这个问题可能有点深入了,但相信能回答出这个问题是对I/O多路复用有很好的了解了.其中tornado使用的就是epoll的.selec,poll和epoll区别总结基本上select有3个缺点:连接数受限查找配对速度慢数据由内核拷贝到用户态poll改善了第一个缺点epoll改了三个缺点.关于epoll的:...转载 2018-05-19 12:22:11 · 308 阅读 · 0 评论 -
Python常见语言特性
本文借鉴了http://python.jobbole.com/85231/,然后总结了自己的见解Python语言特性1 Python的函数参数传递看两个例子:Python12345a = 1def fun(a): a = 2fun(a)print a # 1Python12345a = []def fun(a): a.append(1)fun(a)print a # [1]所有的变...原创 2018-05-19 12:19:08 · 4742 阅读 · 1 评论 -
Python中协程的理解
原Num01–>协程的定义协程,又称微线程,纤程。英文名Coroutine。 首先我们得知道协程是啥?协程其实可以认为是比线程更小的执行单元。 为啥说他是一个执行单元,因为他自带CPU上下文。这样只要在合适的时机, 我们可以把一个协程 切换到另一个协程。 只要这个过程中保存或恢复 CPU上下文那么程序还是可以运行的。Num02–>协程和线程的差异那么这个过程看起来和线程差不多。其实不然...转载 2018-05-11 23:10:21 · 145 阅读 · 0 评论 -
浅谈并行并发与python的GIL锁
并发和并行什么是并发什么是并行,他们的区别是什么?你吃饭吃到一半,电话来了,你一直到吃完了以后才去接,这就说明你不支持并发也不支持并行.你吃饭吃到一半,电话来了,你停了下来接了电话,接完后电话以后继续吃饭,这说明你支持并发。你吃饭吃到一半,电话来了,你一边打电话一边吃饭,这说明你支持并行。并发:交替处理多个任务的能力并行:同时处理多个任务的能力并发的关键是你有处理多个任务的能力,不一定要同时。并行...原创 2018-05-04 16:23:21 · 1086 阅读 · 0 评论