Django中使用Q构建复杂查询

一般我们在Django程序中查询数据库操作都是在QuerySet里进行进行,随着我们的程序越来越复杂,查询的条件也跟着复杂起来,这样简单的通过一个filter()来进行查询的条件将导致我们的查询越来越长。当我们在查询的条件中需要组合条件时(例如两个条件“且”或者“或”)时。我们可以使用Q()查询对象。

比如有以下表:

from django.db import models

class ...

Python发布自己的包到pypi上

      作为一个Python程序员,我们都用过pip install xxx的命令来安装自己所需要的Python包,那么如何发布自己的Python包到pypi上,共享给所有人呢?下面我们来介绍一下方法。

先解释下PyPI,PyPI(Python Package Index)是python官方的第三方库的仓库,所有人都可以下载第三方库或上传自己开发的库到PyPI。PyPI推荐使用pip包管理器来下载第三方库 ...

Python代码性能优化技巧

    代码优化能够让程序运行更快,它是在不改变程序运行结果的情况下使得程序的运行效率更高,根据 80/20 原则,实现程序的重构、优化、扩展以及文档相关的事情通常需要消耗 80% 的工作量。优化通常包含两方面的内容:减小代码的体积,提高代码的运行效率。

1. 改进算法,选择合适的数据结构

一个良好的算法能够对性能起到关键作用 ...

Python中dict()和{}的效率比较

    今天突然想到Python中经常用的两种创建字典的方式dict()和{},那么这两种方式之中哪个效率会更高呢?所以查找了一些资料并自己试验了一下,下面来看看试验的结果

我通过应用timeit来进行试验,看看是否有性能差异。

1. 首先测试一下dict()

>>> python2.7 -m timeit -n 1000000 ...

理解Python中的if __name__ == '__main__':

1. 摘要

    通俗的理解__name__ == '__main__':假如你叫小明.py,在朋友眼中,你是小明(__name__ == '小明');在你自己眼中,你是你自己(__name__ == '__main__')

if __name__ == '__main__ ...