摘要:
各种遍历顺序如下图所示: 树的最大深度 深度优先 深度优先遍历有三种方式:前序遍历、中序遍历和后序遍历 所说的前序、中序、后序,是指根节点的先后顺序。 前序遍历:根节点 -> 左子树 -> 右子树 中序遍历:左子树 -> 根节点 -> 右子树 后序遍历:左子树 -> 右子树 -> 根节点 广度优先 阅读全文
摘要:
原因是在你的settings.py或者其他地方使用了 "import haystack" 当我们使用django-haysatck库时,表面上会有haystack库,但实际上并不存在, 当你使用 import haystack 时,在haystack使用__init__初始化会 from hayst 阅读全文
摘要:
安装如下依赖库 settings.py 文件中添加如下代码(需要163邮箱开通SMTP服务) 与settings.py同级目录下的__init__.py添加如下代码 在settings.py同级目录下创建celery.py,并添加如下代码 在你的app目录下创建tasks.py,并添加你需要执行的任 阅读全文
摘要:
一个子类可以继承父类的所有属性,不管是父类的数据属性还是方法。 结果输出为 多继承 经典类:深度优先,从左至右 新式类:广度优先,从左至右 新式类与经典类的区别在于是否有继承object基类 它们的关系图如下 当(object)注释掉,变为经典类时,会先查找最亲的父类,结果为 当(object)取消 阅读全文
摘要:
属性:就是属于一个对象的数据或函数元素 类有类方法、实例方法、静态方法、类数据属性(类变量)和实例数据属性(实例变量)。 类属性:包括类方法和类变量,可以通过类或实例来访问,只能通过类来修改。 实例属性:包括实例方法和实例变量 使用类来访问类变量 使用类来修改类变量 使用类来访问类方法 使用类来访问 阅读全文
摘要:
'==' 比较的是两个对象的值 'is' 比较的是两个对象的内存地址(id) 下面我们着重理解 'is'。对于这个,我们需要知道:小整数对象池,大整数对象池,以及intern机制 小整数池:Python预先创建小整数缓存池—— [-5~256],无论创建多少个对象,都是指向同一个地址,这样是为了避免 阅读全文
摘要:
repr() 函数可以将字符串转换为python的原始字符串(即忽视各种特殊字符的作用) 然后再使用eval() 函数将原始字符串转换为正常的字符串,不使用eval 输出的字符串会带有 ' ' 引号。 str() 和 repr() 都是把对象转换为字符串,但 str() 转换的字符串对用户友好, r 阅读全文
摘要:
MySQL中事先保存好爬取到的图片链接地址。 然后使用多线程把图片下载到本地。 阅读全文
摘要:
re.compile(pattern,flags=0)将正则表达式编译成正则表达式对象。可以使用match()和search()方法进行匹配。对于常用的表达式可以先进行编译,后续可多次使用以提高效率。如 r = re.compile(r'a') rt = r.search('delav')rt.group() #结果为'a' re.match(pattern,strings)匹配字符串开... 阅读全文
摘要:
1.视图 视图是一系列select语句返回的可视化结果集,是一张虚拟表。更多介绍请查看http://tool.oschina.net/apidocs/apidoc?api=mysql-5.1-zh 视图操作 2.索引 MySQL 索引可以分为单列索引、复合索引、唯一索引、主键索引等。适当的建立索引能 阅读全文