摘要: 1,管理方式 Python 内存回收是以引用计数为主和清除标记,分代回收为辅的机制。 1)引用计数。是指每一个对象别引用一次,将标记引用计数加1,而减少一次引用将计数减1,增加引用计数的情况包括创建对象,别名赋值,list,dict等容器添加对象,作为参数传入等,减少引用次数包括销毁对象,变量赋值指 阅读全文
posted @ 2018-09-25 16:30 DXAndLIGHT 阅读(520) 评论(0) 推荐(0) 编辑
摘要: def lock_order(fn): def _warps(*args, **kwargs): pre = cache.get("lock_order", 0) if pre: print "get_order_process is locked " return 0 version = str( 阅读全文
posted @ 2018-06-01 12:00 DXAndLIGHT 阅读(105) 评论(0) 推荐(0) 编辑
摘要: 引入邀请链接功能,然后更新链接。 邀请链字段存取向上的邀请人ID,比如:1:2:10:表示一级邀请人为1,二级邀请人为2,三级邀请人为10. 阅读全文
posted @ 2018-06-01 11:59 DXAndLIGHT 阅读(342) 评论(0) 推荐(0) 编辑
摘要: 我在想怎么让一个属性只读,这让我想起来了classmethod,都知道classmethod就是只能让类来调用,所以呢,这里它们都用到一个东西描述符。 1描述符有两种: 1)数据描述符,实现了__get__和__set__的类。 2)非数据描述符,只实现了__get__的类。 2,实例查找属性的顺序 阅读全文
posted @ 2017-08-04 15:39 DXAndLIGHT 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 好久没更新了,今天想想哪些要记录下的,装饰器什么的就不说了,很熟悉了,记录下。 1.monkey patch. 其实就是动态修改类,包括属性方法等的一种方式。 比如a = A() a.foo = foo之类的,但是怎么在运行前修改呢,类似gevent那样用自己的socket替换, gevent 源码 阅读全文
posted @ 2017-08-04 12:04 DXAndLIGHT 阅读(244) 评论(0) 推荐(0) 编辑
摘要: confuluence wiki , jira, gitlab, bootstrapvaildtor 阅读全文
posted @ 2017-03-10 17:14 DXAndLIGHT 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 重复点击对处理的时候,可能mysql默认事务是repated处理级别的,会导致读取数据一致带来多次更新。 解决办法: 1.在setting.py里设置更改mysql事务的级别。 2.用select_for_update行级锁。 3,由于django没有代码级设置下一次事务的级别,所以只能自己hack 阅读全文
posted @ 2016-10-31 11:12 DXAndLIGHT 阅读(330) 评论(0) 推荐(0) 编辑
摘要: 一, 日志文件,每一行形如: 每一行包含十几列,每列由空格隔开。 由于部分列本身可能存在空格,这时该列会用额外的双引号 "" 包含起来。 尝试用自己熟悉的语言,编写一个函数,实现日志解析,提取每一列。 Python 和 C 语言实现最佳,也可提供多个版本(不使用第三方库)。 评价指标 准确性 可读性 阅读全文
posted @ 2016-07-25 19:11 DXAndLIGHT 阅读(271) 评论(0) 推荐(0) 编辑
摘要: 1,python操作excel 用openpyxl 2,django 配置jinja2搜索django最新文档。 阅读全文
posted @ 2016-07-13 18:20 DXAndLIGHT 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 1,文件启动就是用命令python 文件名,模块启动python -m 模块名 2,文件启动会把所在目录加入到sys.path, 模块启动当前相对目录加入到sys.path 3,__main__.py ,文件调用目录时候直接进入,模块调用先进入__init__.py,再进入__main__.py 4 阅读全文
posted @ 2016-06-16 16:10 DXAndLIGHT 阅读(2603) 评论(0) 推荐(0) 编辑