自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

心若动、泪千行

学一学,聊一聊,写一写

  • 博客(115)
  • 资源 (6)
  • 问答 (1)
  • 收藏
  • 关注

转载 实例详解Django的 select_related 和 prefetch_related 函数对 QuerySet 查询的优化(三)

这是本系列的最后一篇,主要是select_related() 和 prefetch_related() 的最佳实践。第一篇在这里 讲例子和select_related()第二篇在这里 讲prefetch_related()4. 一些实例选择哪个函数如果我们想要获得所有家乡是湖北的人,最无脑的做法是先获得湖北省,再获得湖北的所有城市,最后获得故乡是这个

2017-10-22 12:03:11 548

转载 实例详解Django的 select_related 和 prefetch_related 函数对 QuerySet 查询的优化(二)

这是本系列的第二篇,内容是 prefetch_related() 函数的用途、实现途径、以及使用方法。本系列的第一篇在这里第三篇在这里3.prefetch_related()对于多对多字段(ManyToManyField)和一对多字段,可以使用prefetch_related()来进行优化。或许你会说,没有一个叫OneToManyField的东西啊。实际上 ,For

2017-10-22 11:12:38 482

转载 实例详解Django的 select_related 和 prefetch_related 函数对 QuerySet 查询的优化(一)

在数据库有外键的时候,使用 select_related() 和 prefetch_related() 可以很好的减少数据库请求的次数,从而提高性能,本文通过一个简单的例子详解这两个函数的作用。虽然QuerySet的文档中已经详细说明了,但本文试图从QuerySet触发的SQL语句来分析工作方式,从而进一步了解Django具体的运作方式。1. 实例的背景说明假定一个个人信息

2017-10-22 10:41:56 783

原创 Django安装及基本操作指南

以下操作均在Windows下操作一 配置Python环境1.安装Python3.6下载地址:https://www.python.org/ftp/python/3.6.2/python-3.6.2.exe,下载后按照默认方式安装即可,记住安装路径2.设置环境变量步骤(Win10):右键单击电脑属性--->高级系统设置--->环境变量--->编辑系统变量Path--->将刚才...

2017-09-17 12:04:49 481

转载 Django进阶之CSRF

简介django为用户实现防止跨站请求伪造的功能,通过中间件 django.middleware.csrf.CsrfViewMiddleware 来完成。而对于django中设置防跨站请求伪造功能有分为全局和局部。全局:中间件 django.middleware.csrf.CsrfViewMiddleware局部:@csrf_protect,为当前函数强制设

2017-09-02 12:31:41 2294

原创 Django url 参数及name参数介绍

url()函数可以被传入4个参数,两个是必须的:regex和view,两个是可选的:kwargs和name,下面来看一下这些参数是干啥的。url()参数:regex“regex”经常被用作正则表达式的缩写,正则表达式是一种对字符串进行模式匹配的语法,对于我们而言,就是对url模式的匹配。Django会把请求的url从第一条正则表达式开始匹配,直到找到一个可以匹配上的正则表达式为止。

2017-08-26 12:21:56 5810 2

原创 Django url管理之include

在Django框架中,提供了非常清晰简洁的url管理方法,在新建一个project之后(此处为myproject),然后在项目中建立一个app(此处为myapp),会看到有如下的目录结构:一般所熟知的就是在myproject/myproject/urls.py中的urlpatterns列表中来配置 url,每一个列表项就是一个由url函数的调用。例如假定我们想在myapp中定义一个

2017-08-26 10:16:09 1738

原创 Python3.0以上版本安装pip和MySQLdb

学习Python,pip和MySQLdb是必要的,一个便于安装常用模块,一个用来操作数据库。当时安装这两个模块时,由于没有人指导,花了很多的时间才安装好。安装pip时,按照网上的教程,先在链接https://pypi.python.org/pypi/pip里下载了pip8.1,按照常规方法,解压后执行python setup.py install。发现报错了“ImportError:N

2017-08-25 08:57:02 7369 3

原创 Django启动服务器报错:maximum recursion depth exceeded in cmp

解决方案:找到路径 python\Lib\fuctools.py:将如下内容:convert = { '__lt__': [('__gt__', lambda self, other: other < self), ('__le__', lambda self, other: not other < self), ('

2017-08-19 17:33:22 2867

原创 Git进行分支管理

Git如何进行分支管理?     1、创建分支     创建分支很简单:git branch      2、切换分支     git checkout      该语句和上一个语句可以和起来用一个语句表示:git checkout -b      3、分支合并     比如,如果要将开发中的分支(develop),合并到稳定分支(master),     首先切换的

2017-08-19 16:29:14 551

原创 Python2.7-pip install MySQL-python失败的问题

环境,windows64位下,python版本是2.7.0,因为操作数据库需要安装mysql-python,所以直接命令行下,命令:pip install mysql-python报错:_mysql.c(42) : fatal error C1083: Cannot open include file: 'config-win.h': No such file or d

2017-08-06 16:17:44 5601

转载 Windows下MySQL下载安装、配置与使用

用过MySQL之后,不论容量的话,发现比其他两个(sql server 、oracle)好用的多,一下子就喜欢上了。下面给那些还不知道怎么弄的童鞋们写下具体的方法步骤。(我这个写得有点太详细了,甚至有些繁琐,有很多步骤在其他的教程文档里都是省略掉的,但我还是要写出来,因为我当时走了很多弯路,我希望你们能够避免我走的这些弯路。当然,知道同学的可以略过,选择你想知道的地方看)第一大步:

2017-08-06 12:57:44 682

转载 python2.7安装setuptools和pip及卸载

准备工作:已安装Python并配置好环境变量,可参考 http://blog.csdn.net/donggege214/article/details/52062855安装setuptools下载setuptools源码setuptools-25.2.0.tar.gz地址:https://pypi.python.org/pypi/setuptools 这是一

2017-08-06 12:49:29 27797 3

转载 新手学习Django的十条注意点

刚刚开始学习Django的新手注意了,这里总结了十条注意点,能够帮助你更好的学习Django,减少出错,避免走弯路,很值得一看哦~~1.不要将项目名称包含在引用代码里比如你创建了一个名为"project"的项目,包含一个名为"app"的应用,那么如下代码是不好的:from project.app.models import Author缺点在于:应用和项目变成了紧耦合,无法

2017-08-06 12:14:37 1083

转载 Python 三种导入模块的方法和区别

方法一:      import modname  模块是指一个可以交互使用,或者从另一Python 程序访问的代码段。只要导入了一个模块,就可以引用它的任何公共的函数、类或属性。模块可以通过这种方法来使用其它模块的功能。  用import语句导入模块,就在当前的名称空间(namespace)建立了一个到该模块的引用.这种引用必须使用全称,也就是说,当使用在被导入模块中定义的函数时,必须包

2017-07-31 16:04:30 1545

转载 Python模块导入原理剖析

在Python用import或者from...import来导入相应的模块。模块其实就是一些函数和类的集合文件,它能实现一些相应的功能,当我们需要使用这些功能的时候,直接把相应的模块导入到我们的程序中,我们就可以使用了。  Python中的Module是比较重要的概念。常见的情况是,事先写好一个.py文件,在另一个文件中需要import时,将事先写好的.py文件拷贝到当前目录,或者是在

2017-07-31 15:21:41 2930 1

转载 Python日志输出——loging模块

1. logging介绍        Python的logging模块提供了通用的日志系统,可以方便第三方模块或者是应用使用。这个模块提供不同的日志级别,并可以采用不同的方式记录日志,比如文件,HTTP GET/POST,SMTP,Socket等,甚至可以自己实现具体的日志记录方式。        logging模块与log4j的机制是一样的,只是具体的实现细节不同。模块提供lo

2017-07-09 16:40:47 816

转载 Windows安装BeautifulSoup及使用

windows安装BeautifulSoup1.下载 BeautifulSoup包。 网址:http://www.crummy.com/software/BeautifulSoup/bs4/download/4.3/这是BeautifulSoup4.3的下载地址。 如需下其它版本:http://www.crummy.com/software/BeautifulSoup/2.解压,然

2017-06-08 09:41:28 9225

转载 Python SQLite使用详解

Python SQLITE数据库是一款非常小巧的嵌入式开源数据库软件,也就是说没有独立的维护进程,所有的维护都来自于程序本身。它使用一个文件存储整个数据库,操作十分方便。它的最大优点是使用方便,功能相比于其它大型数据库来说,确实有些差距。但是性能表现上,SQLITE并不逊色。麻雀虽小,五脏俱全, sqlite 实现了多数 sql-92 的标准,比如说 transaction 、 trigger

2017-05-24 09:15:22 754

转载 python字符串编码

今天,用Python写文件,发现中国人真不容易,任何编程问题都需要比老外多学一套应对编码的方法。JSP写完了吗?中文编码问题考虑一下;servlet中的url,转发的文本,都有可能与什么gb2312,isoxxxx,utf-8,unicode,ascii扯上关系。以至于,我们每每遇到运行异常,都会“一朝被蛇咬十年怕井绳”般思考“是不是又是编码导致的”。在python里,编码问题依然是个恶心

2017-05-21 10:14:22 487

转载 SQl行列互转

行列互转,是一个经常遇到的需求。实现的方法,有case when方式和2005之后的内置pivot和unpivot方法来实现。在读了技术内幕那一节后,虽说这些解决方案早就用过了,却没有系统性的认识和总结过。为了加深认识,再总结一次。行列互转,可以分为静态互转,即事先就知道要处理多少行(列);动态互转,事先不知道处理多少行(列)。--创建测试环境USE tempdb;GOIF O

2017-04-21 10:24:14 638

转载 python—递归

在函数内部,可以调用其他函数。如果一个函数在内部调用自身本身,这个函数就是递归函数。举个例子,我们来计算阶乘n! = 1 x 2 x 3 x ... x n,用函数fact(n)表示,可以看出:fact(n) = n! = 1 x 2 x 3 x ... x (n-1) x n = (n-1)! x n = fact(n-1) x n所以,fact(n)可以表示为n x

2017-04-05 13:51:49 316

转载 python函数—定义参数的几种方式

定义函数的时候,我们把参数的名字和位置确定下来,函数的接口定义就完成了。对于函数的调用者来说,只需要知道如何传递正确的参数,以及函数将返回什么样的值就够了,函数内部的复杂逻辑被封装起来,调用者无需了解。Python的函数定义非常简单,但灵活度却非常大。除了正常定义的必选参数外,还可以使用默认参数、可变参数和关键字参数,使得函数定义出来的接口,不但能处理复杂的参数,还可以简化调用者的代码。

2017-04-01 17:47:03 2848

转载 python函数--默认参数指向不可变对象

先定义一个函数,传入一个list,添加一个END再返回:def add_end(L=[]): L.append('END') return L当你正常调用时,结果似乎不错:>>> add_end([1, 2, 3])[1, 2, 3, 'END']>>> add_end(['x', 'y', 'z'])['x', 'y', 'z', 'END']当

2017-04-01 17:17:21 646

转载 python元组(指向不变)

tuple另一种有序列表叫元组:tuple。tuple和list非常类似,但是tuple一旦初始化就不能修改,比如同样是列出同学的名字:>>> classmates = ('Michael', 'Bob', 'Tracy')现在,classmates这个tuple不能变了,它也没有append(),insert()这样的方法。其他获取元素的方法和list是一样的,你可以正常地

2017-03-20 17:40:00 583

转载 python字符编码

字符编码我们已经讲过了,字符串也是一种数据类型,但是,字符串比较特殊的是还有一个编码问题。因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理。最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255(二进制11111111=十进制255),如果要表示更大的整数,就必须用更多的字节。比如两个字节可以表示的最大

2017-03-20 17:18:36 287

转载 python变量—内存存储

变量的概念基本上和初中代数的方程变量是一致的,只是在计算机程序中,变量不仅可以是数字,还可以是任意数据类型。变量在程序中就是用一个变量名表示了,变量名必须是大小写英文、数字和_的组合,且不能用数字开头,比如:a = 1变量a是一个整数。t_007 = 'T007'变量t_007是一个字符串。Answer = True变量Answer是一个布尔值Tr

2017-03-20 16:49:55 4775

转载 Python中time模块详解

在平常的代码中,我们常常需要与时间打交道。在Python中,与时间处理有关的模块就包括:time,datetime以及calendar。这篇文章,主要讲解time模块。在开始之前,首先要说明这几点:在Python中,通常有这几种方式来表示时间:1)时间戳 2)格式化的时间字符串 3)元组(struct_time)共九个元素。由于Python的time模块实现主要调用C库,所以各

2017-03-18 10:00:04 623

转载 PyCharm 断点调试

PyCharm 作为IDE,断点调试是必须有的功能。否则,我们还真不如用纯编辑器写的快。1,设置断点在代码前面,行号的后面,鼠标单击,就可以设置断点。如下:2,调试 断点点击那个绿色的甲虫图标(似乎甲虫已经成为debug专用图标了),进行断点调试。点击后,会运行到第一个断点。会显示该断点之前的变量信息。

2017-02-15 09:33:37 3468

转载 深入理解Python生成器(Generator)

我们可以通过列表生成式简单直接地创建一个列表,但是受到内存限制,列表容量肯定是有限的。而且,创建一个包含100万个元素的列表,不仅占用很大的存储空间,而且如果我们仅仅需要访问前面几个元素,那后面绝大多数元素占用的空间都白白浪费了。所以,如果列表元素可以按照某种算法推算出来,那我们是否可以在循环的过程中不断推算出后续的元素呢?这样就不必创建完整的list,从而节省大量的空间。在Python中

2017-02-14 14:34:02 1846 1

原创 详解Python魔术方法__getitem__、__setitem__、__delitem__、__len__

Python的魔术方法一般以__methodname__的形式命名,如:__init__(构造方法), __getitem__、 __setitem__(subscriptable所需method), __delitem__(del obj[key]所需method), __len__(len(…)所需method)等。在Python中,如果我们想实现创建类似于序列和映射的类,可以通过

2017-02-07 11:24:18 8376

转载 python类中super()和__init__()的区别

最近有同学问我关于Python类中的super()和__init__()共同点和不同点的问题, 我今天把它们两个的异同点总结了一下,希望可以帮助遇到同样困惑的同学。单继承时super()和__init__()实现的功能是类似的class Base(object): def __init__(self): print 'Base create'class chi

2017-01-14 11:33:26 1012

转载 详解python的super()的作用和原理

Python中对象方法的定义很怪异,第一个参数一般都命名为self(相当于其它语言的this,比如:C#),用于传递对象本身,而在调用的时候则不必显式传递,系统会自动传递。今天我们介绍的主角是super(), 在类的继承里面super()非常常用, 它解决了子类调用父类方法的一些问题, 父类多次被调用时只执行一次, 优化了执行逻辑,下面我们就来详细看一下。举一个

2017-01-14 10:54:23 20752

原创 Python 列表排序方法reverse、sort、sorted详解

python语言中的列表排序方法有三个:reverse反转/倒序排序、sort正序排序、sorted可以获取排序后的列表。在更高级列表排序中,后两中方法还可以加入条件参数进行排序。reverse()方法将列表中元素反转排序,比如下面这样>>> x = [1,5,2,3,4]>>> x.reverse()>>> x[4, 3, 2, 5, 1]reverse列表反转

2016-11-30 08:52:28 15942

转载 三种方法删除列表中重复的元素及效率分析!

方法一:使用列表对象的sort()方法对列表进行排序,从最后一个元素开始循环迭代列表,判断相邻的两元素是否是否相等!def methodOne(list): list.sort() lenList = len(list) lastItem = list[lenList-1] for i in range(lenList-2,-1,-1):

2016-11-29 14:04:39 2313

原创 Python repr() 或str() 函数

repr() 输出对 Python比较友好,而str()的输出对用户比较友好。虽然如此,很多情况下这三者的输出仍然都是完全一样的尽管str(),repr()和``运算在特性和功能方面都非常相似,事实上repr()和``做的是完全一样的事情,它们返回的是一个对象的“官方”字符串表示,也就是说绝大多数情况下可以通过求值运算(使用内建函数eval())重新得到该对象,但str()则有所不同。str(

2016-11-29 10:51:32 595

转载 Python---round函数四舍五入详解之python2与python3版本间区别

round()方法返回 数值 的小数点四舍五入到n个数字。语法以下是round()方法的语法:round( x [, n] )参数 x --这是一个数值,表示round()方法返回 数值 的小数点四舍五入到n个数字。语法以下是round()方法的语法:round( x [, n] )参数    x --这是一个数值,表示需要格式化的数值

2016-11-28 17:27:13 8155

转载 Python时间获取及转换知识汇总

时间处理是我们日常开发中最最常见的需求,例如:获取当前datetime、获取当天date、获取明天 前N天、获取当天开始和结束时间(00:00:00 23:时间处理是我们日常开发中最最常见的需求,例如:获取当前datetime、获取当天date、获取明天/前N天、获取当天开始和结束时间(00:00:00 23:59:59)、获取两个datetime的时间差、获取本周/本月/上月最后一天

2016-11-28 15:21:49 1422

原创 Python中运算符"=="和"is"的差别分析

前言在讲is和==这两种运算符区别之前,首先要知道Python中对象包含的三个基本要素,分别是:id(身份标识)、python type()(数据类型)和valu前言在讲is和==这两种运算符区别之前,首先要知道Python中对象包含的三个基本要素,分别是:id(身份标识)、python type()(数据类型)和value(值)。is和==都是对对象进行比较判断作用的,但对对象比

2016-11-17 12:23:39 2533

原创 Python2和Python3中print的不同点

在Python2和Python3中都提供print()方法来打印信息,但两个版本间的print稍微有差异主要体现在以下几个方面:1 python3中print是一个内置函在Python2和Python3中都提供print()方法来打印信息,但两个版本间的print稍微有差异主要体现在以下几个方面:1.python3中print是一个内置函数,有多个参数,而python2

2016-11-17 12:21:39 18211

lucene.net+盘古分词

lucene.net+盘古分词实现全文搜索,数据匹配,关键词高亮显示等等

2016-01-25

C#问题记事本

这是一个超好用的记事本,用起来十分方便。

2014-10-20

图书管理系统

这是一个完整的图书管理系统,包括借书,还书,以及借出书籍超期进行罚款,可借书籍的查询,每本书籍的库存量等等

2013-09-21

.NET中的MVC架构

该文档对.NET中的MVC架构进行了全面的阐述,看完此文档后你会对MVC架构有一个深入的了解。

2013-09-21

.net数据处理技术

一本很不错的.net数据处理介绍,对深入学习.net的学者会有很大的帮助。

2013-09-21

.net高级技术

详细介绍了.Net的学习方法,对无论是.net的初学者还是已经学了很长时间的人来说都是值得一看的。

2013-09-21

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除