- 博客(47)
- 收藏
- 关注
原创 MySQL Explain 用法
expain出来的信息有10列,分别是id、select_type、table、type、possible_keys、key、key_len、ref、rows、Extra概要描述:id:选择标识符select_type:表示查询的类型。table:输出结果集的表partitions:匹配的分区type:表示表的连接类型possible_keys:表示查询时,可能使用的索引key:表示实际使用的索引key_len:索引字段的长度ref:列与索引的比较rows:扫描出的行数(估算的行数)
2021-04-14 17:45:57 147
原创 Python面试之装饰器的几种不同写法
废话不多说,直接撸代码import functoolsimport time# 1.普通装饰器def logger(func): def wrapper(*args, **kwargs): print('开始处理。。。') func(*args, **kwargs) print('处理结束。') return wrapper# 2.带参数的装饰器def say_hello(who): def wrapper(f
2021-04-01 11:12:08 163
原创 Python之 GC 机制总结
引用计数:当发生以下四种情况的时候,该对象的引用计数器+1 对象被创建 a=14 对象被引用 b=a 对象被作为参数,传到函数中 func(a) 对象作为一个元素,存储在容器中 List={a,”a”,”b”,2} 与上述情况相对应,当发生以下四种情况时,该对象的引用计数器-1 当该对象的别名被显式销毁时 del a 当该对象的引别名被赋予新的对象, a=26 一个对象离开它的作用域,例如 func函数执行完毕时,函数里面的局部变量的引用计数器就会减一(但
2021-03-31 11:17:31 490 1
原创 Django Channels 实现 websocket 通讯
官方文档如下:https://channels.readthedocs.io/en/stable/introduction.htmlChannels改变Django在下面和通过Django的同步核心编织异步代码,允许Django项目不仅处理HTTP,还需要处理需要长时间连接的协议 - WebSockets,MQTT,chatbots,业余无线电等等。它在保留Django同步和易用性的同时实现了这一点,允许您选择编写代码的方式 - 以Django视图,完全异步或两者混合的方式同步。除此之外,.
2021-03-23 10:33:59 770 1
原创 Python import 导入机制
题目有以下 A.py 和 B.py 两个模块:A.pyprint(1)aaa = 111print(2)def a(): print(3) from B import b print(4) b()print(5)aa = a()print(6)B.pyfrom A import aaadef b(): print(aaa)问:导入 import A 和 直接运行 python3 A.py,在结果上会有什么不同?原因.
2021-03-06 09:30:08 193
原创 Python 高级函数
1、mapmap()函数接收两个参数,一个是函数,一个是Iterable,map将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator返回2、reducereduce把一个函数作用在一个序列[x1, x2, x3, ...]上,这个函数必须接收两个参数,reduce把结果继续和序列的下一个元素做累积计算3、filter和map()类似,filter(...
2019-08-08 16:54:29 139
原创 Mysql 循环处理业务
第一种:create procedure sum1(a int) begin declare sum int default 0; -- default 是指定该变量的默认值 declare i int default 1; while i<=a DO -- 循环开始 insert into record_test (dat...
2019-08-07 15:39:55 358
原创 初识 Shell
一. 本质概念由于安全、复杂、繁琐等原因,用户不能直接接触内核(也没有必要),需要另外再开发一个程序,让用户直接使用这个程序;该程序的作用就是接收用户的操作(点击图标、输入命令),并进行简单的处理,然后再传递给内核,这样用户就能间接地使用操作系统内核了。你看,在用户和内核之间增加一层“代理”,既能简化用户的操作,又能保障内核的安全,何乐不为呢?用户界面和命令行就是这个另外开发的程序,就是...
2019-07-31 17:45:46 151
原创 工欲善其事,必先利其器(装逼工具)
工欲善其事,必先利其器(装逼工具)Pycharm。专业的python IDE,功能很强大,特别喜欢它的代码merge工具,不想被编辑器折腾死的推荐直接使用,五星级推荐。(除了内存占用大点)。如果你不喜欢折腾编辑器,请直接用 IDE,经常看见一些用裸编辑器写代码的,代码规范检测都没有。 vim。本人比较喜欢的编辑器,平常写代码、博客、文档等使用频繁,配上各种插件编辑效率很高。http://vi...
2019-02-26 17:19:05 543
原创 微信开发总结(笔记记录)
有关微信开发的总结一.首先大致分享一下官方开发文档: 公众平台-小程序开发文档:https://developers.weixin.qq.com/miniprogram/dev/devtools/ext.html 公众平台技术开发文档:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp142114122...
2018-12-12 18:21:51 1078
原创 Django REST framework
Django REST framework 框架是一个用于构建Web API 的强大而又灵活的工具。通常简称为DRF框架 或 REST framework。特点提供了定义序列化器Serializer的方法,可以快速根据 Django ORM 或者其它库自动序列化/反序列化; 提供了丰富的类视图、Mixin扩展类,简化视图的编写; 丰富的定制层级:函数视图、类视图、视图集合...
2018-08-05 22:12:40 4357
原创 Tornado框架
Tornado与Django DjangoDjango是走大而全的方向,注重的是高效开发,它最出名的是其全自动化的管理后台:只需要使用起ORM,做简单的对象定义,它就能自动生成数据库结构、以及全功能的管理后台。Django提供的方便,也意味着Django内置的ORM跟框架内的其他模块耦合程度高,应用程序必须使用Django内置的ORM,否则就不能享受到框架内提供的种种基于其ORM的...
2018-08-03 16:47:32 4272
原创 Django框架学习day04-Admin站点
Admin站点Django能够根据定义的模型类自动地生成管理页面。后台管理系统使用Django的管理模块,需要按照如下步骤操作:管理界面本地化 创建管理员 注册模型类 自定义管理页面1 管理界面本地化在settings.py中设置语言和时区LANGUAGE_CODE = 'zh-hans' # 使用中国语言TIME_ZONE = 'Asia/Shanghai' # ...
2018-08-03 10:53:59 220
原创 Django框架学习day03-数据库
Django中的数据库ORM框架O是object,也就类对象的意思,R是relation,翻译成中文是关系,也就是关系数据库中数据表的意思,M是mapping,是映射的意思。在ORM框架中,它帮我们把类和数据表进行了一个映射,可以让我们通过类和类对象就能操作它所对应的表格中的数据。ORM框架还有一个功能,它可以根据我们设计的类自动帮我们生成数据库中的表格,省去了我们自己建表的过程。...
2018-08-01 21:08:12 241
原创 Django框架学习day02-类视图
Django 中的类视图1. 类视图引入以函数的方式定义的视图称为函数视图,函数视图便于理解。但是遇到一个视图对应的路径提供了多种不同HTTP请求方式的支持时,便需要在一个函数中编写不同的业务逻辑,代码可读性与复用性都不佳。 def register(request): """处理注册""" # 获取请求方法,判断是GET/POST请求 if request...
2018-07-31 19:22:45 221
原创 Python中迭代器和生成器的理解
迭代器迭代是访问集合元素的一种方式。迭代器是一个可以记住遍历的位置的对象。迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。1. 可迭代对象我们已经知道可以对list、tuple、str等类型的数据使用for...in...的循环语法从其中依次拿到数据进行使用,我们把这样的过程称为遍历,也叫迭代。我们把可以通过for...in...这类语句迭...
2018-07-29 20:35:19 981
原创 Django框架学习day01-初识
1. 简介Django 是用python语言写的开源web开发框架,并遵循MVC设计。Django的主要目的是简便、快速的开发数据库驱动的网站。它强调代码复用,多个组件可以很方便的以"插件"形式服务于整个框架,Django有许多功能强大的第三方插件,你甚至可以很方便的开发出自己的工具包。这使得Django具有很强的可扩展性。它还强调快速开发和DRY(DoNotRepeatYoursel...
2018-07-29 12:38:08 885 1
原创 Redis 浅谈
1、关于nosql介绍1、1 NoSQL:一类新出现的数据库(not only sql)泛指非关系型的数据库不支持SQL语法存储结构跟传统关系型数据库中的那种关系表完全不同,nosql中存储的数据都是KV形式NoSQL的世界中没有一种通用的语言,每种nosql数据库都有自己的api和语法,以及擅长的业务场景NoSQL中的产品种类相当多:MongodbRedisHbase hadoopCass...
2018-07-12 19:28:42 298
原创 后端框架之Flask--蓝图和测试单元
BlueprintBlueprint概念:简单来说,Blueprint 是一个存储操作方法的容器,这些操作在这个Blueprint 被注册到一个应用之后就可以被调用,Flask 可以通过Blueprint来组织URL以及处理请求。Flask使用Blueprint让应用实现模块化,在Flask中,Blueprint具有如下属性:一个应用可以具有多个Blueprint可以将一个Blueprint注册到...
2018-07-11 18:46:56 532
原创 后端框架之Flask--SQLAlchemy 数据库操作
1、ORMORM 全拼Object-Relation Mapping.中文意为 对象-关系映射.主要实现模型对象到关系数据库数据的映射.ORM图解:优点 :只需要面向对象编程, 不需要面向数据库编写代码.对数据库的操作都转化成对类属性和方法的操作.不用编写各种数据库的sql语句.实现了数据模型与数据库的解耦, 屏蔽了不同数据库操作上的差异.不在关注用的是mysql、oracle...等.通过简单的...
2018-07-10 14:41:18 3162 1
原创 CSRF--跨站请求伪造
CSRFCSRF全拼为Cross Site Request Forgery,译为跨站请求伪造。CSRF指攻击者盗用了你的身份,以你的名义发送恶意请求。包括:以你名义发送邮件,发消息,盗取你的账号,甚至于购买商品,虚拟货币转账......造成的问题:个人隐私泄露以及财产安全。CSRF攻击示意图客户端访问服务器时没有同服务器做安全验证防止 CSRF 攻击步骤:在客户端向后端请求界面数据的时候,后端会往...
2018-07-08 21:00:07 310
原创 后端框架之Flask--模板
1、模板在前面的示例中,视图函数的主要作用是生成请求的响应,这是最简单的请求。实际上,视图函数有两个作用:处理业务逻辑和返回响应内容。在大型应用中,把业务逻辑和表现内容放在一起,会增加代码的复杂度和维护成本。本节学到的模板,它的作用即是承担视图函数的另一个作用,即返回响应内容。模板其实是一个包含响应文本的文件,其中用占位符(变量)表示动态部分,告诉模板引擎其具体的值需要从使用的数据中获取使用真实值...
2018-07-08 20:36:08 1117
原创 后端框架之Flask--初识
1、Web框架web网站发展至今,特别是服务器端,涉及到的知识、内容,非常广泛。这对程序员的要求会越来越高。如果采用成熟,稳健的框架,那么一些基础的工作,比如,安全性,数据流控制等都可以让框架来处理,那么程序开发人员可以把精力放在具体的业务逻辑上面。使用框架的优点:稳定性和可扩展性强可以降低开发难度,提高开发效率。在 Python 中常用的 Web 框架有: Flask 、Django、To...
2018-07-05 20:15:10 5709
原创 前端面试知识点总结
day01 一、软件按照程序和数据存储位置的不同,可以分为: 单机软件 界面:Tk、pyQt、wxPython C/S架构软件 界面:Tk、pyQt、wxPython B/S 架构软件 界面:网页 二、前端开发的定义:为B/S架构软件提供界面解决方案 三、网页的基本结构:看讲义 四、快捷键创建网页:英文的“!”+tab键 五、标签按照显示的效果可以分为: 块元素标签:默认占有一行 内联...
2018-07-03 11:20:42 299
原创 前端框架之Vue.js 库的使用
vue.js简介Vue.js是前端三大新框架:Angular.js、React.js、Vue.js之一,Vue.js目前的使用和关注程度在三大框架中稍微胜出,并且它的热度还在递增。Vue.js可以作为一个js库来使用,也可以用它全套的工具来构建系统界面,这些可以根据项目的需要灵活选择,所以说,Vue.js是一套构建用户界面的渐进式框架。Vue的核心库只关注视图层,Vue的目标是通过尽可能简单的 A...
2018-06-29 09:53:44 6143
原创 Jquery 中的利刃- ajax技术
概况ajax一个前后台配合的技术,它可以让javascript发送http请求,与后台通信,获取数据和信息。ajax技术的原理是实例化xmlhttp对象,使用此对象与后台通信。jquery将它封装成了一个函数$.ajax(),我们可以直接用这个函数来执行ajax请求。ajax需要在服务器环境下运行。$.ajax使用方法常用参数:1、url 请求地址2、type 请求方式,默认是'GET',常用的还...
2018-06-28 19:25:22 203
原创 前端开发神器之-Jquery 用法
jquery介绍jQuery是目前使用最广泛的javascript函数库。据统计,全世界排名前100万的网站,有46%使用jQuery,远远超过其他库。微软公司甚至把jQuery作为他们的官方库。jQuery的版本分为1.x系列和2.x、3.x系列,1.x系列兼容低版本的浏览器,2.x、3.x系列放弃支持低版本浏览器,目前使用最多的是1.x系列的。jquery是一个函数库,一个js文件,页面用sc...
2018-06-23 21:35:02 435
原创 浅谈TCP/IP ,HTTP,Socket及网络编程
什么是协议?有的说英语,有的说中文,有的说德语,说同一种语言的人可以交流,不同的语言之间就不行了为了解决不同种族人之间的语言沟通障碍,现规定国际通用语言是英语,这就是一个规定,这就是协议.计算机网络沟通用什么? TCP/IP协议是什么?广义定义:现在的生活中,不同的计算机只需要能够联网(有线无线都可以)那么就可以相互进行传递数据就像说不同语言的人沟通一样,只要有一种大家都认可都遵守的协议即可,那么...
2018-06-22 20:23:08 416
原创 JavaScript 进阶
JavaScript中数组及操作方法数组就是一组数据的集合,javascript中,数组里面的数据可以是不同类型的。定义数组的方法: 分为两种://对象的实例创建var aList = new Array(1,2,3);//直接量创建var aList2 = [1,2,3,'asd'];操作数组中数据的常用方法 :1、获取数组的长度:aList.length;var aList = [1,...
2018-06-22 19:07:22 344
原创 JavaScript 简述-入门
JavaScript介绍 JavaScript是运行在浏览器端的脚步语言,JavaScript主要解决的是前端与用户交互的问题,包括使用交互与数据交互,JavaScript是浏览器解释执行的。前端三大块 1、HTML:页面结构2、CSS:页面表现:元素大小、颜色、位置、隐藏或显示、部分动画效果3、JavaScript:页面行为:部分动画效果、页面与用户的交互、页面功能JavaScript嵌入...
2018-06-20 19:03:32 166
原创 HTML 和CSS进阶
html 中列表标签 列表一般应用在布局中的新闻标题列表和文章标题列表已经菜单, 他们是有语义的,标签结构如下:<ul> <li>列表标题一</li> <li>列表标题二</li> <li>列表标题三</li></ul>一般配合链接 a 结构语句一起使用,
2018-06-19 20:58:41 579 1
原创 HTML 和 CSS 简述
html概述HTML是 HyperText Mark-up Language 的首字母简写,意思是超文本标记语言,超文本指的是超链接,标记指的是标签,是一种用来制作网页的语言,这种语言由一个个的标签组成,用这种语言制作的文件保存的是一个文本文件,文件的扩展名为html或者htm。<!DOCTYPE html><html> <head> ...
2018-06-16 22:14:34 330
原创 web服务器之mini_frame框架demo
dynamic/mini_frame.pyimport reimport pymysqlimport urllib.parseimport loggingURL_FUNC_DICT = dict()"""URL_FUNC_DICT = { "/index.py" : index, "/center.py" : center, }""...
2018-06-12 20:30:07 376
原创 Python 中的闭包 和 装饰器
闭包 1.闭包的概念及三要素: 闭包其实就是一种代码的实现方式 闭包的三要素:1. 函数的嵌套 ; 2.内层函数使用外层函数的变量 ;3.外层函数返回内层函数的引用 举例如下:# 定义一个外部函数def test(number): # 在函数内部再定义一个函数,并且这个函数用到了外边函数的变量,那么将这个函数以及用到的一些变量称之为闭包...
2018-06-09 20:01:02 401
转载 Python2.x 和 Python3.x 的区别
1.性能 Py3.0运行 pystone benchmark的速度比Py2.5慢30%。Guido认为Py3.0有极大的优化空间,在字符串和整形操作上可 以取得很好的优化结果。 Py3.1性能比Py2.5慢15%,还有很大的提升空间。2.编码 Py3.X源码文件默认使用utf-8编码,这就使得以下代码是合法的: >>> 中国 = 'china' >>&...
2018-06-07 21:20:34 162
原创 Python中注意事项(待完善)
动态导入模块: python 中不仅可以用过import 在开头导入其他模块, 可以通过代码动态导入模块,获取模块对象,从而调用其他模块的函数或者方法, 格式如下:# import frame_name --->找frame_name.py frame = __import__(frame_name) # 返回值标记这 导入的这个模板 app = getattr...
2018-06-07 20:14:29 232
原创 MySQL 深究
视图 1.命令--定义视图: create view 视图名 as select语句; 删除视图: drop view 视图名; 建议视图名以v_ 开头, 2.特点: 不可以修改 ; 以及如果修改原表的话, 视图中的数据会随之变化(引用) 3.作用: [1].提...
2018-06-06 20:18:46 173
原创 MySQL 浅识
一. 数据库的操作: 1. 登录客户端: mysql -u 用户名 -p 密码 mysql -uroot -pmysql 2.退出客户端: exit / quit / ctrl +d 3.查看所有的数据库: show databases; 4.使用数据库: use database(); 5.查...
2018-06-01 21:25:55 169
原创 Python 中的魔法属性
无论人或事物往往都有不按套路出牌的情况,Python的类属性也是如此,存在着一些具有特殊含义的属性,详情如下:1. __doc__表示类的描述信息class Foo: """ 描述类信息,这是用于看片的神奇 """ def func(self): passprint(Foo.__doc__)#输出:类的描述信息2. __module__ 和__cl...
2018-05-31 19:28:13 702
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人