
Python
Alkaid丶
这个作者很懒,什么都没留下…
展开
-
Python设计模式
Python创建型设计模式原型模式根据现有对象复制出新对象并对其进行修改。class Point: __slot__ = ('x','y') def __init__(self, x, y): self.x = x self.y = y使用原型模式创建对象point1 = Point(1,2)point2 = copy.deepcopy...原创 2019-06-30 16:33:00 · 254 阅读 · 0 评论 -
Python从零开始编写轻量级Web框架(3)
编写一个轻量级的Web应用框架最近阅读了Flask的源码,弄懂了原理之后就想尝试来实现自己的一个Web框架。因为大部分的实现思路都参照Flask0.1版本,也就是最初版本的思路。所用的基本库是werkzeug。框架的完整代码都放在了Github上,之后会继续更新:https://github.com/jyz0309/WebFrame求star,球球了T_T在完成了ORM模块之后,接下来为...原创 2019-09-01 00:01:30 · 341 阅读 · 0 评论 -
Python从零开始编写轻量级Web框架(1)
编写一个轻量级的Web应用框架最近阅读了Flask的源码,弄懂了原理之后就想尝试来实现自己的一个Web框架。因为大部分的实现思路都参照Flask0.1版本,也就是最初版本的思路。所用的基本库是werkzeug。框架的完整代码都放在了Github上,之后会继续更新:https://github.com/jyz0309/WebFrame求star,球球了T_T总体思想:按照flask的最基...原创 2019-08-21 16:47:26 · 603 阅读 · 0 评论 -
Python从零开始编写轻量级Web框架(2)
编写一个轻量级的Web应用框架最近阅读了Flask的源码,弄懂了原理之后就想尝试来实现自己的一个Web框架。因为大部分的实现思路都参照Flask0.1版本,也就是最初版本的思路。所用的基本库是werkzeug。框架的完整代码都放在了Github上,之后会继续更新:https://github.com/jyz0309/WebFrame求star,球球了T_T在完成了框架的最基本的GET、P...原创 2019-08-25 23:33:28 · 470 阅读 · 0 评论 -
一次性弄懂Python中的垃圾回收机制
垃圾回收机制最近针对Python中的垃圾回收机制做了一些了解,参考了多个博客之后写出了这一篇东西引用计数Python中,主要依靠gc模块的引用计数技术来进行垃圾回收。所谓引用计数,就是在一个引用被创建或者复制的时候,让Python把相关对象的引用计数+1;相反当引用被销毁的时候就把相关对象的引用计数-1。当发生下面四种情况的时候,对象的引用计数器+1:对象被创建对象被引用对象被作...原创 2019-08-14 08:30:57 · 585 阅读 · 0 评论 -
Flask源码剖析(二)
Flask源码剖析(2)看完了Flask最初0.1版本的源码后,接下来来看看下一次的大版本:1.0版本的Flask的源码。1.0版本相比更新了很多东西较为重要的如下:CLI更加灵活。开发服务器默认情况下多线程处理开发过程中的并发请求。test_client新增用于发布JSON数据的json参数,Response对象新增get_json方法来在测试中将数据解码为JSON。新增test_...原创 2019-07-28 20:18:28 · 874 阅读 · 0 评论 -
Flask转至Django后模板'url_for' is undefined问题解决
问题来源:将原本使用Flask框架编写的后台项目的前端模板移植到前端模板的时候,因为模板引擎不同,Django使用的是自带的默认模板引擎,flask使用的是Jinja2模板引擎,虽然可以将Django的模板引擎改为Jinja2,但有些只能在flask中使用的语法。比如:这里,本质是想通过static调用静态文件夹中的资源,但是url_for函数是在Flask下的函数,在Django中并没有...原创 2019-08-08 11:08:11 · 1220 阅读 · 0 评论 -
Flask源码剖析(一)
Flask源码剖析(1)from flask import Flaskapp = Flask(__name__)@app.route("/")def hello(): return "Hello World!"if __name__ == "__main__": app.run()如上是一个最简单的创建Flask应用的服务端程序。当用户的gunicorn收到了h...原创 2019-07-19 15:33:59 · 290 阅读 · 0 评论 -
Python中的内存管理
Python中的内存管理内存是一本空白的书可以将计算机的内存想像成一本用来写短篇小说的空书。它的页面上还没有任何的内容,但是到了后面,不同的作者将会出现。每个作者都想要一些空间来书写它们的内容。由于它们不允许书写在不属于它们的页,因此它们必须小心写内容在页面上,在它们开始写作之前,它们会咨询负责管理这本书的“经理”,然后由经理来决定允许它们写书的位置。由于这本书已经存在了很长的时间,所以其...原创 2019-07-16 16:33:55 · 891 阅读 · 0 评论 -
Python字符串与列表的互换
由列表转为字符串:''.join(list)示例:a = ['a1', '32']print(''.join(a)) #注意字符串为空字符串>>>a132由字符串转为列表:示例:str1 = "hi hello world"print(str1.split(" "))输出:['hi', 'hello', 'world']...原创 2019-07-07 09:34:01 · 538 阅读 · 0 评论 -
Python的GIL详解
GIL详解GIL全称global interpreter lock,全局解释器锁,是 Python 解释器中的一个布尔值,受到互斥保护。这个锁被 CPython 中的核心字节码用来评估循环,并调节用来执行语句的当前线程。每个线程在执行的时候都需要先获取GIL,保证同一时刻只有一个线程可以执行代码,即同一时刻只有一个线程使用CPU。执行单线程程序的开发人员看不到GIL的影响,但它可能是CPU绑定...原创 2019-07-10 20:20:16 · 4438 阅读 · 2 评论 -
基于HMM和BP神经网络的睡眠分期算法
基于HMM和BP神经网络的睡眠分期算法由于在做睡眠监测设备,最近研究了一下睡眠分期的相关…在知网上查到了很多的论文,对其中一篇论文做了一个复现并进行了些许的改进,弄了一个睡眠分期算法,将成果写成博客方便日后查看。首先,在讲述算法模型前,先科普一下睡眠分期的一个相关研究。睡眠分期的相关研究睡眠过程中,脑电图发生各种不同变化,这些变化随着睡眠的深度而不同。根据脑电图的不同特征,又将睡眠分为两种状...原创 2019-06-30 13:20:46 · 7280 阅读 · 9 评论 -
Python中的线程和进程
Python中的进程和线程对于操作系统来说,一个任务就是一个进程(Process),比如打开一个浏览器就是启动一个浏览器进程,打开一个记事本就启动了一个记事本进程,打开两个记事本就启动了两个记事本进程,打开一个Word就启动了一个Word进程。有些进程还不止同时干一件事,比如Word,它可以同时进行打字、拼写检查、打印等事情。在一个进程内部,要同时干多件事,就需要同时运行多个“子任务”,进程内...转载 2019-07-14 15:32:39 · 366 阅读 · 0 评论 -
leetcode 152.乘积最大子序列python实现
题目要求:给定一个整数数组 nums ,找出一个序列中乘积最大的连续子序列(该序列至少包含一个数)。示例 1:输入: [2,3,-2,4]输出: 6解释: 子数组 [2,3] 有最大乘积 6。示例 2:输入: [-2,0,-1]输出: 0解释: 结果不能为 2, 因为 [-2,-1] 不是子数组。解题思路:由于是求的是最大的乘积子序列,所以有可能是由负数与负数相乘得来的,...原创 2019-07-10 10:02:35 · 637 阅读 · 1 评论 -
辗转相除法Python实现
辗转相除法无聊写的= =def Euclidean(a, b): max = a if a > b else b min = b if a > b else a if max % min == 0: return min else: return Euclidean(min, max-min*int(max/min))...原创 2019-03-01 16:16:50 · 9137 阅读 · 0 评论 -
Python从零开始编写轻量级Web框架(4):实现重定向功能
重定向redirect最近阅读了Flask的源码,弄懂了原理之后就想尝试来实现自己的一个Web框架。因为大部分的实现思路都参照Flask0.1版本,也就是最初版本的思路。所用的基本库是werkzeug。框架的完整代码都放在了Github上,之后会继续更新:https://github.com/jyz0309/WebFrame求star,球球了T_T完成了session功能后,接下来来继续...原创 2019-09-27 17:47:19 · 534 阅读 · 0 评论