自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 深入理解yield

通常的for…in…循环中,in后面是一个数组,这个数组就是一个可迭代对象,类似的还有链表,字符串,文件。它可以是mylist = [1, 2, 3],也可以是mylist = [x*x for x in range(3)]。它的缺陷是所有数据都在内存中,如果有海量数据的话将会非常耗内存。生成器是可以迭代的,但只可以读取它一次。因为用的时候才生成。比如 mygenerator = (x...

2019-02-01 13:31:11 173

原创 python大文件操作

我们知道python进行数据处理时有相应的库,此篇只是针对python标准库中file文件操作中的read,readline,readlines等进行介绍我们使用file读取文件时常看到直接使用read(),readlines()等一次性把文件读取完毕,这样对小文件来说当然可以,但是对于大文件来说就可能会出现内存泄漏的问题。当默认参数size=-1时,read方法会读取直到EOF,当文件大...

2019-02-01 13:30:34 1158

原创 嵌套列表推倒式

自己初次使用时常常搞不清嵌套的顺序,所以写下以下案例方便理解(推倒式遍历时深层级在后面)rooms = [ [ {'age': 14, 'hobby': 'horses', 'name': 'A'}, {'age': 12, 'hobby': 'piano', 'name': 'B'}, {'age': 9, 'hobby': 'c...

2019-01-22 11:23:58 191

原创 Lambda函数

语法lambda 参数 :表达式参数:类似与function()小括号中的参数,常见形式如下a,ba=1,b=2*args**kwargs空表达式:表达式中出现的参数需要在argument_list中有定义,并且表达式只能是单行的特性lambda函数是匿名的,函数没有名字lambda具有输入输出,参数就是其输入,供表达式使用,表达式结果为函数的返回结果,即输出。...

2019-01-15 10:06:58 13406

原创 python中的堆和栈

堆中存的是对象。栈中存的是基本数据类型和堆中对象的引用。一个对象的大小是不可估计的,或者说是可以动态变化的,但是在栈中,一个对象只对应了一个4btye的引用(堆栈分离的好处)。内存中的堆栈和数据结构堆栈不是一个概念,可以说内存中的堆栈是真实存在的物理区,数据结构中的堆栈是抽象的数据存储结构。内存空间在逻辑上分为三部分:代码区、静态数据区和动态数据区,动态数据区又分为栈区和堆区。代码区...

2019-01-11 14:39:00 6537

原创 深入理解python类的创建和初始化

一、理解类也是对象在理解元类之前,你需要先掌握Python中的类。Python中类的概念借鉴于Smalltalk,这显得有些奇特。在大多数编程语言中,类就是一组用来描述如何生成一个对象的代码段。在Python中这一点仍然成立:class ObjectCreator(object): passmy_object = ObjectCreator()print my_object#输...

2019-01-10 09:10:13 6843 2

原创 mongodb权限验证开启

mongodb安装之后默认是没有用户和密码的,可以容易的接入,但是真实使用中肯定不会是这样的,需要有用户验证,研究了好久,记录一下:mongo shell 添加用户:有2种方式可以启动mongo的权限认证1.直接输入命令(仅当前启动有效)sudo mongod -auth2.修改/etc/mongo.conf,增添以下内容security: authorization: en...

2019-01-10 09:08:54 1000

原创 Flask项目小知识

1.make_response# 表示返回响应,参数可以是一个对象,比如图片,一段html语句make_response(对象)# 他返回一个response对象,可以设置响应头信息response = make_response(image)# 设置响应头信息response.headers['Content-Type'] = 'image/jpg'return response...

2018-11-17 12:29:52 141

原创 python理论加强(二)

命令行参数命令行参数格式为python my.py v1 v2 可以通过以下查看参数的值,需要注意的是,argv[0]指的是脚本自身路径,argv[1]才为第一个参数V1from sys import argv 继承子类只继承父类非私有方法,要想使用父类属性,需要调用父类init方法,但当继承关系为菱形继承时,会出现父类初始化多次的问题,这叫做二义性问题为了解决这种问题,使用s...

2018-11-11 19:14:04 302

转载 跟我学Flask(七)-flask工作原理

在对Flask代码基本结构有一定了解之后,为了以后学习的顺利,我们需要进一步了解Flask工作的基本原理*本文转载自孙华强博客:*https://blog.csdn.net/sunhuaqiang1/article/details/72808619所有的 Python Web框架都要遵循 WSGI 协议,在这里还是要简单回顾一下 WSGI 的核心概念。  WSGI 中有一个非常重要的概念:...

2018-11-07 15:52:55 224

原创 跟我学Flask(六)-状态保持-上下文对象-脚本管理器

一、状态保持Session和Cookie因为 http 是一种无状态协议,浏览器请求服务器是无状态的。无状态:指一次用户请求时,浏览器、服务器无法知道之前这个用户做过什么,每次请求都是一次新的请求。无状态原因:浏览器与服务器是使用 socket 套接字进行通信的,服务器将请求结果返回给浏览器之后,会关闭当前的 socket 连接,而且服务器也会在处理页面完毕之后销毁页面对象。有时需要保持...

2018-11-07 15:49:04 192

原创 跟我学Flask(五)-异常处理与请求钩子

在开始讲解异常处理之前,先科普一下常见的状态码一、网站常见状态码TypeReason-phraseNote1XXInformational信息性状态码,表示接受的请求正在处理2XXSuccess成功状态码,表示请求正常处理完毕3XXRedirection重定向状态码,表示需要客户端需要进行附加操作4XXClient Error客户端错误状...

2018-11-06 20:49:59 709

原创 跟我学Flask(四)-url传参与重定向

一、URL传参有时我们需要将同一类 URL 映射到同一个视图函数处理,比如:使用同一个视图函数来显示不同用户的个人信息。传入参数:通过url地址给视图函数传入参数;语法:<>,括号里面存储的是参数,可以返回字符串/数值1.1、默认的数据类型为string,string兼容数值# 路由传递参数@app.route('/user/<user_id>')def ...

2018-11-05 20:46:48 628

原创 跟我学Flask(三)-程序配置参数的加载方法

此篇文章主要介绍下程序如何加载配置参数问题,比如开启DEBUG模式在 Flask 程序运行的时候,可以给 Flask 设置相关配置,比如:配置 Debug 模式,配置数据库连接地址等等,设置 Flask 配置有以下三种方式:从配置对象中加载(常用)app.config.from_object()从配置文件中加载app.config.from_pyfile()从环境变量中...

2018-11-05 20:44:43 171

原创 跟我学Flask(二)-从HelloWorld讲起

从本节开始,会一步步带领大家从零开发一个网站,前面为理论教程,后面为项目实战本节主要以实例为主,熟悉flask基本语法,下一节会介绍程序执行的流程一、从简单的Hello World开始我们先看一段最简单的代码,然后在进行具体的分析# 导入Flaskfrom flask import Flask# 创建Flask类的对象app = Flask(__name__)#定义路由地址...

2018-11-04 13:47:34 178

原创 跟我学Flask(一)-知识铺垫

本文为pythonWeb之flask系列第一篇,主要为后续课程打好铺垫一.访问网站的流程1.用户在浏览器输入url后,浏览器会访问DNS域名解析服务器,解析ip地址,端口号2.客户端与服务器三次握手建立连接3.客户端向服务器发送请求报文,常用的请求方法有get,post,put,deleteGET获取资源GET默认请求方式, 从指定的资源请求数据,多用于链接...

2018-11-04 11:58:04 210

原创 python理论加强(一)

GIL(全局解释器锁)GIL只应用于Cpython解释器,GIL是把互斥锁由于Cpython无法应对多个线程同时对系统资源的请求,所以需要GIL对全局资源上锁,使得线程能交替(并发)使用全局资源GIL是解释器层面的,互斥锁是代码层面的,注意线程对全局变量的使用还是要加互斥锁GIL锁在线程执行完,线程阻塞,超时时自动释放,如不存在以上条件,则根据其计数器结束GIL影响:多线程交替并发执...

2018-11-02 21:42:33 178

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除