摘要: 类装饰器: import time class MyClass: def __init__(self, func): """需要接收一个被装饰的函数引用 相当于装饰器函数中外层函数的作用,接收 函数名 参数""" self._func = func def __call__(self, *args, 阅读全文
posted @ 2019-12-26 11:40 砚台是黑的 阅读(129) 评论(0) 推荐(0) 编辑
摘要: """ 需求:参数传入0 希望时间用整数显示,参数传入1 用浮点数显示 """ import time def get_run_time(flag): """装饰器工厂函数""" def get_time(func): """装饰器函数:对函数运行时间进行统计""" print('in get_ti 阅读全文
posted @ 2019-12-26 11:37 砚台是黑的 阅读(247) 评论(0) 推荐(0) 编辑
摘要: 函数名的意义: 1.>就是存有函数代码空间的引用的对象 2.>对象可以将引用传递给其他对象 3.>该对象可以接收来自其他对象的引用 函数名<也是一个对象>就是指向函数代码的引用.对象既可以把引用传给别人,也能接收别人的引用. 应用:调用底层的,使用底层的 因为Python有很多使用其他语言写好的库, 阅读全文
posted @ 2019-12-26 11:35 砚台是黑的 阅读(176) 评论(0) 推荐(0) 编辑
摘要: closure:闭包的意思闭包特点: 1.>函数的嵌套定义,就是函数定义里面有另外一个函数的定义 2.>外部函数返回内部函数的引用<引用地址> 3.>内部函数可以使用外部函数提供的自由变量/环境变量 <顺序是先去找自己的位置参数,看看是否有同名,如果没有就向外扩展一层,继续这个过程.直到找到>这就是 阅读全文
posted @ 2019-12-26 11:19 砚台是黑的 阅读(131) 评论(0) 推荐(0) 编辑
摘要: 服务器实现: import socket import re import gevent from gevent import monkey import sys monkey.patch_all() # 自动切换 time.sleep recv accept 这些类型的函数在执行的时候会出现大量的 阅读全文
posted @ 2019-12-26 11:13 砚台是黑的 阅读(190) 评论(0) 推荐(0) 编辑
摘要: flask 装饰器工厂模式: import time, pymysql # 方式1:flask 装饰器工厂模式 > # 路由列表 路径 函数引用 flask框架添加路由 route_list = [] def route(url): """装饰器工厂:接收url参数,产生装饰器""" def wra 阅读全文
posted @ 2019-12-26 11:10 砚台是黑的 阅读(214) 评论(0) 推荐(0) 编辑
摘要: """ 框架的作用: web服务器显示的是固定的<是服务器提前准备好的>,需要实时更新的数据就不支持 web服务器保存静态资源<图片等>:不会经常发生变化.意思就是一个仓库,里面的东西需要拿工具来进行操作,从而实现删除. 框架就是一个工具,用来对服务器资源进行增删改查的操作,使得服务器的资源进行变化 阅读全文
posted @ 2019-12-26 10:46 砚台是黑的 阅读(160) 评论(0) 推荐(0) 编辑
摘要: MongoDB是一个面向文档的数据库系统.使用c++编写,不支持sql.但有自己功能强大的查询语法. MongoDB使用BSON作为数据存储和传输的格式,BSON是一种类似JSON的二进制序列化文档,支持嵌套对象和数组. MongoDB很像mysql,document对应mysql的row,coll 阅读全文
posted @ 2019-12-26 10:35 砚台是黑的 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 一、如何对查询命令进行优化? 1.>尽量避免全表扫描,首先考虑在where 以及 order by涉及的字段上建立索引。 2.>尽量避免在where子句中对字段进行null判空操作.避免使用!=操作符,避免使用or连接条件,或在where子句中对字段使用参数,对字段进行表达式或函数操作.否则会导致全 阅读全文
posted @ 2019-12-26 10:26 砚台是黑的 阅读(149) 评论(0) 推荐(0) 编辑
摘要: """ 索引:计算机中非常著名的概念,都是为了提高查找的效率 列表:顺序查找,一个一个找,很慢. <下标-索引> 字典:通过key查找值value <key其实可以称之为索引> 计算机中的二八原则: 8:2 百分之八十是读操作,百分之二十是写操作. 表索引也是数据库中的一项单独的文件:.idx in 阅读全文
posted @ 2019-12-26 10:18 砚台是黑的 阅读(229) 评论(0) 推荐(0) 编辑
摘要: """ 支付10 充值10 失败了 目标: 深圳-万州 中转方案: 1.深圳-广州 2.广州-武汉 3.武汉-万州 某一步出错了回滚,回退到原来的状态. 回滚-->滚回来的意思 事务:transaction 是一系列的sql语句操作 保证所有操作完全执行,如果成功一半,完全不执行,什么都不执行.全部 阅读全文
posted @ 2019-12-26 10:12 砚台是黑的 阅读(123) 评论(0) 推荐(0) 编辑
摘要: """ 视图: select goods.name,goods_cates.name,goods_brands.name from goods,goods_cates,goods_brands where goods.cate_id=goods_cates.id and goods_brands.i 阅读全文
posted @ 2019-12-26 10:11 砚台是黑的 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 带有实际场景的去思考,去学习. 如果有外键的情况下:先创建主表,再去创建子表 设计表结构:观摩别人的表结构:三范式:遵守到2范式或者3范式即可 只支持二维表 第一范式<1NF>:原子性,即列不能够再分成其他几列 >不存在嵌套的表结构 第二范式<2NF>:必须是1NF,1.>另外还需要包含一个主键,2 阅读全文
posted @ 2019-12-26 10:06 砚台是黑的 阅读(135) 评论(0) 推荐(0) 编辑
摘要: """ cate_name:分类名称 brand_name:品牌 is_show:是否显示 is_saleoff:是否售罄/是否卖光了 工作中的时候尽量使用group by 分组进行筛选,where用的较少. select round(avg(price),2) from goods group b 阅读全文
posted @ 2019-12-26 10:04 砚台是黑的 阅读(139) 评论(0) 推荐(0) 编辑
摘要: """ 1.> as 起别名 1.>给字段起别名:select id as '学号',name as '芳名'from students; 2.>给表起别名:select s.id,s.name from students as s; 注意:as可以不写,省略. select s.id,s.name 阅读全文
posted @ 2019-12-26 09:59 砚台是黑的 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 数据库:数据的集合. 特点: 高效的管理数据 数据库本身就是一种文件.特点:1.>持久化存储2.>读写速度极高3.>保证数据的有效性 防止数据错误<类型 约束>4.>对程序支持性非常好,容易扩展 mysql 数据库客户端-->数据库服务器-->数据库文件文件 数据库文件才是存储数据的,接受服务器取数 阅读全文
posted @ 2019-12-26 09:46 砚台是黑的 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 不用管是不是close文件了.文件太大,比如FAT323格式,最大4G,如果超过了,就写不进去,这样会在close()前面会抛出异常,这样文件就一直没有关闭,会导致文件资源会一直被占用,造成资源泄露,这样就会出现一直打开文件的现象,导致资源泄露.解决方法: try: pass except: 错误 阅读全文
posted @ 2019-12-26 09:34 砚台是黑的 阅读(169) 评论(0) 推荐(0) 编辑
摘要: __私有:以单下划线开头(_foo)的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用“from xxx import *”而导入_私有,但是我也可以改,只是提示你这是私有的不希望被改,被保护的.单前置下划线,私有化属性或方法,from somemodule import *禁止导入,类 阅读全文
posted @ 2019-12-26 09:30 砚台是黑的 阅读(123) 评论(0) 推荐(0) 编辑
摘要: """ 需求:age = 0, 有人修改p.age=999 设置成公共属性:容易被其他人修改,自己还不知道已经修改了 设置成私有属性,外部使用不方便了.需要加设置属性和获取属性的方法 property:把以上两点合二为一了 既简单,又保证数据的正确性. """ class Person: def _ 阅读全文
posted @ 2019-12-26 09:27 砚台是黑的 阅读(497) 评论(0) 推荐(0) 编辑
摘要: """ 多继承和super的关系 """ class Person: def __init__(self, name, age): print('Person类开始构造') self.name = name self.age = age print('Person类end构造') def love1 阅读全文
posted @ 2019-12-26 09:24 砚台是黑的 阅读(178) 评论(0) 推荐(0) 编辑