随笔分类 -  python

摘要:Python语法特性 使用Python来编写也有很长一段时间了,也想着如何优化自己的代码,随之也搜了一些问题。其中印象比较深刻的就是stackoverflow上的一个问题解答了。 Argument Unpacking 可以使用 * 和 ** 分别将一个列表和一个字典解包为函数参数如: def dra 阅读全文
posted @ 2019-10-17 11:26 rayh 阅读(262) 评论(0) 推荐(0)
摘要:什么是异步编程? 同步代码(synchrnous code)我们都很熟悉,就是运行完一个步骤再运行下一个。要在同步代码里面实现"同时"运行多个任务,最简单也是最直观地方式就是运行多个 threads 或者多个 processes。这个层次的『同时运行』多个任务,是操作系统协助完成的。 也就是操作系统 阅读全文
posted @ 2019-07-24 09:57 rayh 阅读(1325) 评论(0) 推荐(1)
摘要:介绍 介绍 Supervisor是用Python开发的一套通用的进程管理程序,能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能自动重启。它是通过fork/exec的方式把这些被管理的进程当作supervisor的子进程来启动,这样只要在supervisor的配置文件中,把要 阅读全文
posted @ 2019-06-21 15:09 rayh 阅读(627) 评论(1) 推荐(0)
摘要:本次测试是在Centos环境下,用到了redis作为中间件 首先安装redis,这里将不一一结束redis的安装。 安装完redis后,安装celery 一、在django项目的settings中添加: # Celery settings CELERY_BROKER_URL = 'redis://l 阅读全文
posted @ 2019-05-24 19:53 rayh 阅读(189) 评论(0) 推荐(0)
摘要:使用 pyenv 安装 Python3 python依赖环境(CentOS): yum install readline readline-devel readline-static -y yum install openssl openssl-devel openssl-static -y yum 阅读全文
posted @ 2019-05-15 17:05 rayh 阅读(451) 评论(0) 推荐(0)
摘要:这里将不介绍openpyxl模块的详细操作。 主要就是记录一个使用openpyxl模块将Excel表格的数据导入数据库中的实例。 阅读全文
posted @ 2019-04-19 15:47 rayh 阅读(1778) 评论(0) 推荐(0)
摘要:这里就不一一诉说Session和Cookie直接的关系了,下面以一张图来概括: 下面是一个简单的Tornaod自定义Session的例子,看完后你可能会明白为什么我们在Django里可以直接使用request.session来获取或者设置键值对的原因,在这个例子中包含了许多调用类里面的方法,例如__ 阅读全文
posted @ 2019-03-25 14:38 rayh 阅读(146) 评论(0) 推荐(0)
摘要:一、概述 Tornado 是 FriendFeed 使用的可扩展的非阻塞式 web 服务器及其相关工具的开源版本。这个 Web 框架看起来有些像是一个py文件,不过为了能有效利用非阻塞式服务器环境,这个 Web 框架还包含了一些相关的有用工具和优化。 Tornado 和现在的主流 Web 服务器框架 阅读全文
posted @ 2019-03-23 00:28 rayh 阅读(241) 评论(0) 推荐(0)
摘要:一、获取 Odoo 源码 Odoo 是一个开源项目,我们可以轻松的在 Github 上找到它的源码。本次中使用的是 12.0 版本的 Odoo,所以在拉取代码时选择 12.0 的分支。确保拉取的速度,使用--depth参数。 二、启动Odoo 在Odoo的源码根目录下有一个 odoo-bin 的 P 阅读全文
posted @ 2019-03-19 00:08 rayh 阅读(4162) 评论(0) 推荐(0)
摘要:一、什么是Web框架 框架,即framework,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构,使用框架可以帮你快速开发特定的系统。 浏览器与服务器之间发起HTTP请求: 对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端。 impor 阅读全文
posted @ 2019-03-11 23:09 rayh 阅读(448) 评论(0) 推荐(0)
摘要:一. 什么是RESTful REST与技术无关,代表的是一种软件架构风格,REST是Representational State Transfer的简称,中文翻译为“表征状态转移” REST从资源的角度类审视整个网络,它将分布在网络中某个节点的资源通过URL进行标识,客户端应用通过URL来获取资源的 阅读全文
posted @ 2019-03-11 22:38 rayh 阅读(193) 评论(0) 推荐(0)
摘要:一,中间件的概念 django 中的中间件(middleware),在django中,中间件其实就是一个类,在请求到来和结束后,django会根据自己的规则在合适的时机执行中间件中相应的方法。在django项目的settings模块中,默认有一个 MIDDLEWARE变量,其中每一个元素就是一个中间 阅读全文
posted @ 2019-03-08 15:19 rayh 阅读(350) 评论(0) 推荐(0)
摘要:在此之前,我们说一下虚拟环境这个概念: 在django项目中,直接就安装各种package,可能会造成系统混乱,因为package之间会有依赖的。比方说,你现在直接装django,他会依赖其他的包(开发django的人也不会总想着重新造轮子,有些功能既然别人写好了,拿来用就是了),比如pytz这个包 阅读全文
posted @ 2019-02-23 17:45 rayh 阅读(2057) 评论(0) 推荐(0)
摘要:一:什么是ModelForm呢? Model + Form ==> ModelForm。model和form的结合体,所以有以下功能: 数据验证 数据库操作 model有操作数据库的字段,form验证也有那几个字段,虽然耦合度降低,但是代码是有重复的。如果利用model里的字段,那是不是form里的 阅读全文
posted @ 2019-02-21 21:08 rayh 阅读(186) 评论(0) 推荐(0)
摘要:总结:self是谁就从谁开始寻找 阅读全文
posted @ 2019-01-17 18:38 rayh 阅读(149) 评论(0) 推荐(0)
摘要:正则表达式符号: . ^ $ * + ? {} () | [] .一个点代表一个字符 ^代表开头 $代表结尾 *代表有0到无数个 [0,+00] ?代表有0到1个 [0,1] +代表有1到无数个[1,+00] {1,6}代表1到6个,{a-z}代表a到z的字母,{^A-Z}代表非A到Z的字母 \是转 阅读全文
posted @ 2019-01-16 23:19 rayh 阅读(214) 评论(0) 推荐(0)
摘要:一、什么是装饰器? 装饰器他人的器具,本身可以是任意可调用对象,被装饰者也可以是任意可调用对象。 二、强调装饰器的原则: 1 不修改被装饰对象的源代码 2 不修改被装饰对象的调用方式 3:在遵循1和2的前提下,为被装饰对象添加上新功能 三、装饰器的使用: import time def timmer 阅读全文
posted @ 2019-01-16 16:46 rayh 阅读(199) 评论(0) 推荐(0)
摘要:Django请求生命周期: 1.发送http请求2.服务器接受,根据请求头中的url在路由关系表中进行匹配(从上到下)3.匹配成功后,执行指定的views函数 URL -> 函数 ==>FBV URL -> 类 ==>CBV4.业务处理 - 根据个人需求自定 - 操作数据库 - 原生SQL - Dj 阅读全文
posted @ 2019-01-08 23:14 rayh 阅读(113) 评论(0) 推荐(0)
摘要:简单搞定生成验证码: 1.views.py from io import BytesIO import random from PIL import Image,ImageDraw,ImageFont from utils.check_code import create_validate_code 阅读全文
posted @ 2019-01-06 15:39 rayh 阅读(375) 评论(0) 推荐(0)
摘要:一、Model的一些基本字段和参数 null 数据库中字段是否可以为空 db_column 数据库中字段的列名 default 数据库中字段的默认值 primary_key 数据库中字段是否为主键 db_index 数据库中字段是否可以建立索引 unique 数据库中字段是否可以建立唯一索引 uni 阅读全文
posted @ 2018-12-29 00:52 rayh 阅读(173) 评论(0) 推荐(0)