自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 僵尸进程和孤儿进程

孤儿进程:父进程退出后,还在继续运行的这些子进程,被称为孤儿进程;孤儿进程会被init进程所收养,并由init进程对他们完成状态收集。正常情况下,子进程结束,会释放掉所有内存,但是进程号,退出状态,和运行时间在子进程结束后并没有被释放,而是需要其父进程调用wait()或waitpid(),才能进行释放。僵尸进程:一个进程使用fork创建子进程,如果子进程退出,而父进程并没有调用wait...

2018-10-25 22:23:14 292

原创 Flask扩展之 【Flask-Migrate】数据库的迁移

数据库迁移:在开发过程中,需要修改数据库模型,而且还要在修改之后更新数据库。最直接的方式就是删除旧表,但这样会丢失数据。更好的解决办法是使用数据库迁移框架,它可以追踪数据库模式的变化,然后把变动应用到数据库中。数据库的迁移操作,是基于Flask-SQLAlchemy的,相关操作可参考:Flask-SQLAlchemy ,在flask中通过ORM方式来操作数据库1.安装: 扩展的万...

2018-10-24 19:47:29 533

原创 Flask扩展之 【Flask-SQLAlchemy】 关于在flask中通过ORM方式来操作数据库 01

Flask-SQLAlchemy 操作步骤【入门简易版】在介绍Flask-SQLAlchemy之前,先说一下ORM的概念:ORM:ORM 全拼 【Object-Relation Mapping】.中文意为 【对象-关系映射】.主要实现模型对象到关系数据库数据的映射.也就是说,我们可以不需要直接写原生SQL语句,通过调用对象方法的方式,对数据库进行增删改查的操作;呐,ORM有下面的优点:...

2018-10-24 18:09:08 673

原创 关于python中的单例

下面将通过一段代码解释一下,如何实现单例:class OnlyOne(object): # 记录第一个被创建对象的引用 instance = None # 记录是否执行过初始化动作 init_flag = False def __new__(cls, *args, **kwargs): # 1. 判断类属性是否是空对象 ...

2018-10-24 13:37:23 134 1

原创 虚拟环境搭建

使用虚拟环境的原因:如果在一台电脑上, 想开发多个不同的项目, 需要用到同一个包的不同版本, 如果使用上面的命令, 在同一个目录下安装或者更新, 新版本会覆盖以前的版本, 其它的项目就无法运行了。1.安装虚拟环境:sudo pip install virtualenv安装完虚拟环境后,如果提示找不到mkvirtualenv命令,须配置环境变量:# 1、创建目录用来存放虚拟环境mkdi...

2018-10-23 21:36:01 221

原创 git.push push.default

在进行仓库的提交时,你执行了git push命令,可能会出现下面的情况:warning: push.default 尚未设置,它的默认值在 Git 2.0 已从 ‘matching’变更为 ‘simple’。若要不再显示本信息并保持传统习惯,进行如下设置:git config --global push.default matching若要不再显示本信息并从现在开始采用新的使用习惯,设置:...

2018-10-23 20:01:46 385

原创 CSRF攻击与防御

CSRF全拼为Cross Site Request Forgery,翻译过来就是跨站请求伪造跨站请求伪造(CSRF)是Web应用程序的一种常见的漏洞;其特性是危害性大,并且极其隐蔽。下面就从CSRF的危害实例,攻击原理,防御方法几个方面进行解释说明。CSRF的危害实例本案例主人公:用户:xiaomingA银行网站:www.Abank.com黑客网站:www.heikebank.com...

2018-10-20 19:48:59 306

原创 python中的map()函数和reduce()函数的区别和用法介绍

咱们先从定义上来解释一下这两个函数的区别:①从参数方面来讲:map(func, *iterables)包含两个参数,第一个是参数是一个函数,第二个是序列(列表或元组)。其中,函数(即map的第一个参数位置的函数)可以接收一个或多个参数。reduce(function, sequence[, initial]) 第一个参数是函数,第二个是 序列(列表或元组)。但是,其函数必须接收两个参数。②...

2018-10-20 13:03:34 1228

原创 底层代码实现原理--print

目录(小声bb:不定期更新)1.print调用Python中底层的什么方法2. …1.print调用Python中底层的什么方法:关于python中的print函数,我们可以进入到这个函数里进行查看print的定义如下:def print(self, *args, sep=' ', end='\n', file=None)其中有如下注释:print(value, …, s...

2018-10-19 12:34:45 4587 4

原创 如何理解session?? -- session的交互过程

Session产生的原因:在了解学习过浏览器访问服务器的过程的应该了解,浏览器这样的客户端在访问服务端的时候,是通过http协议进行通信的;但是这个http协议有这样的一个情况,就是无状态的;什么是无状态的,就是在这一次发出请求的时候,并不知道同一用户在之前有没有发生过请求。例如如下的对话:案例①A:你学过python吗?B:学过。A:那你学的怎么样?B:啊,学的怎么样,什么怎么样?...

2018-10-16 15:45:37 1598

原创 Cookie 作用,交互过程解析,设置,获取,删除,生效时间的设定

Cookie的作用:对于Cookie的定义:为了辨别用户身份,进行的会话追踪而存储在用户本地的数据。Cookie的一个作用,就是进行状态保持;比如咱们在浏览淘宝网时,如果服务器和浏览器是一种无状态的形式,那么你每次登陆完淘宝网,再次刷新或者进入其他页面时,登陆信息就会丢失,需要重新进行登陆。也就是说,默认状态下,当用户在一次请求时,浏览器和服务器并不知道在这次请求之前这个用户进行过什么操作。...

2018-10-16 14:03:50 2023 1

原创 Flask-装饰器routing路由的具体实现过程

Werkzeug库的routing模块是用来解析url请求的,不同的url对应不同的视图函数,而routing模块的作用就是:对请求信息的URL进行解析,匹配到URL对应的视图函数,执行该函数以此生成一个响应信息。Werkzeug库的 routing 模块中有以下几个部分:Rule类:路由url和视图函数的对应关系在执行print(app.url_map) 后,在终端上会看到下面所示的代码...

2018-10-15 21:07:58 373

原创 Flask扩展之【Flask-script】--通过命令行运行文件的插件

Flask-script:通过使用Flask-Script扩展,我们可以在Flask服务器启动的时候,通过命令行的方式传入参数。而不仅仅通过app.run()方法中传参。可以理解为,通过命令行运行的插件实现过程:在虚拟环境下安装flask-script扩展:pip install flask-script安装案例如下(在pycharm中的Terninal中进行的操作):安装成...

2018-10-15 19:23:23 954

原创 Flask自定义转换器

Flask框架中自带的转换器:DEFAULT_CONVERTERS = { 'default': UnicodeConverter, 'string': UnicodeConverter, 'any': AnyConverter, 'path': PathConverter,...

2018-10-14 22:19:53 432

原创 python中的字典排序--sorted()

字典的排序:在学习python的时候,了解到相比于列表,字典是一个无序的数据结构,一般都不对其进行排序的。但是要想对字典进行排序,是可以通过sorted()函数进行操作的!关于字典的排序,下面从键key 和 值value 进行代码的运行和分析:【先看代码和执行结果,后面会进行详细的解析】# 先定义一个字典,首先声明注意一点,字典中的值需要为同一种数据类型;比如在本案例中的值都是字符串类型。...

2018-10-13 16:12:09 119394 6

原创 sorted()函数

sorted() 函数sorted( iterable, key, reverse)(1)iterable:是可迭代类型的数据;(2)key:用列表元素的某个属性和函数进行作为关键字,有默认值,迭代集合中的一项;(3)reverse:排序规则. reverse = True 或者 reverse = False,有默认值,默认为升序排列False官方关于这个函数的解释:def s...

2018-10-13 15:51:14 2114

原创 json和python中的字典的区别与联系

json:json是一种数据的表现形式,是一种数据格式:比如在ajax中的数据接收类型,一般都是json类型的数据格式,也会有txt的数据格式;如下代码所示:$.ajax({ url: '/change_data', type: 'GET', dataType: 'json', // json 为接收服务器返回的数据类型 data:{'code':30026...

2018-10-13 14:21:30 3827

原创 Linux基本命令

ls:查找当前目录下的所有文件ls 拓展 :ls -a: 显示隐藏的文件 ls -l :显示文件/文件夹的详细信息,包括文件/文件夹的大小,权限等 ls-lh:文件按照列表的信息显示,大小不按照字节显示,按照最合适的单位显示 ls -alh: 显示包括隐藏文件在内的所有文件按照列表的形式 ls la == ll :按照列表的方式显示包括隐藏文件在内的所有文件pwd:...

2018-10-13 12:09:31 107

原创 彻底搞懂python 装饰器, 超详细图文解说

写代码要遵循开放封闭原则封闭:已实现的功能代码块开放:对扩展开放装饰器定义:装饰器本身是一个函数,其作用是对已经封装的函数的功能的增加。备注:下段代码中的【 @start_fun # sums = start_fun(sums), 经过这段代码后,sums函数的指向发生改变–>call_fun】,这段代码如若理解不清晰,可以参考以下链接的解释:def start_...

2018-10-11 22:19:49 531

原创 python 函数名指向改变解析 帮助装饰器代码的理解

函数名仅仅是个变量,只不过指向了定义的函数而已,所以才能通过 函数名() 调用,如果 函数名=xxx 被修改了,那么当在执行 函数名()时,调用的就不知之前的那个函数了 #### 第一种 ####def fun1(): print('fun1') fun1 # 表示是函数的指向(地址)fun1() # 表示执行foo函数#### 第二个####def fun2()...

2018-10-11 22:17:34 333

原创 python 中的 闭包 与 函数的区别

定义:(重点在定义)在外部函数里面定义一个内部函数,并且这个内部函数用到了外部函数的变量,那么将这个内部函数和用到的一些变量统称为闭包。首先看一个闭包的实例:def lines(a, b): def line(x): return a * x + b return line line1 = lines(1, 1) # 可以得到 直线1:y=x+1...

2018-10-11 21:41:10 1718 1

原创 python中 关于 __init__方法 和 __new__方法 区别

关于python中面向对象里面的__init__ 和 __new__的区别首先。官方给出的解释如下:__init__是当实例对象创建完成后被调用的,然后设置对象属性的一些初始值。__new__是在实例创建之前被调用的,因为它的任务就是创建实例然后返回该实例,是个静态方法。也就是说:__new__方法才是实际意义上的构造函数;而__init__ 方法为初始化方法;即:1. ...

2018-10-11 21:03:53 779

原创 python中读取文件函数read()、readline()、readlines()的区别

python中读取文件函数–>read()、readline()、readlines()的区别关于以上三种函数的区别,下面使用代码将运行结果进行进行比较:先创建一个00.txt的文本文件,文件内容如下:111111111222222222333333333444444444read()# 使用 read() 函数读取文本内容时:f = open('00.txt', 'rb...

2018-10-11 20:30:23 3261 2

空空如也

空空如也

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

TA关注的人

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