Python
文章平均质量分 50
比比
这个作者很懒,什么都没留下…
展开
-
MongoDB学习——索引
1.创建索引 这里contests是我建立的记录表,use_id是其中的字段。数字1表示键的索引按升序存储,-1表示键的索引按照降序方式存储。db.cotests.ensureIndex({"user_id":1})2.查询索引db.contests.getIndexes()可以看到查询后的结果,contests有两个索引,其中id索引是默认建立的,该索引唯一,且不能删除。 ...原创 2018-03-30 13:20:51 · 171 阅读 · 0 评论 -
python类中前面有双下划线的属性
python中 前面双下划线的属性,会保存到 _ClassName__variable 中。所以这里通过 “_LocalProxy__local” 设置的值,后面可以通过 self.__local 来获取。In [66]: class A: ...: def __init__(self): ...: self._A__name = 'Abbie' ...原创 2018-07-09 15:30:36 · 2032 阅读 · 0 评论 -
python __dict__函数
python中的类,都会从object里继承一个__dict__属性,这个属性中存放着类的属性和方法对应的键值对。一个类实例化之后,这个类的实例也具有这么一个__dict__属性。但是二者并不相同。 eg:In [26]: class A: ...: some = 1 ...: def __init__(self,num): ...: ...原创 2018-07-10 21:30:09 · 2967 阅读 · 0 评论 -
python爬虫 爬取动态数据
python的requests库只能爬取静态页面,爬取不了动态加载的页面。但是通过对页面的ajax请求的分析,可以解决一部分动态内容的爬取。这篇文章以爬取百度图片中的动物图片为目标,讲解怎么爬取js动态渲染的内容。1.首先我们要做的就是抓包。这里我用的是charles抓包工具。百度动物图片 url=“https://image.baidu.com/search/index?tn=baidui...原创 2018-07-10 21:36:36 · 15603 阅读 · 5 评论 -
scrapy去重队列优化
参考博文:https://blog.csdn.net/bone_ace/article/details/53099042 https://blog.csdn.net/bone_ace/article/details/53107018scrapy里面是可以设置去重的,只要在调用Request的时候将dont_filter设置为false就行了:d...原创 2018-07-10 21:41:59 · 3157 阅读 · 1 评论 -
scrapy Request参数
转自 https://www.cnblogs.com/luolizhi/p/6821458.htmlurl: 就是需要请求,并进行下一步处理的urlcallback: 指定该请求返回的Response,由那个函数来处理。method: 一般不需要指定,使用默认GET方法请求即可headers: 请求时,包含的头文件。一般不需要。内容一般如下:使用 urllib2 自己写过爬虫的肯定知道...转载 2018-07-10 21:44:25 · 5923 阅读 · 1 评论 -
flask——request和response
当客户端向服务器发送一个请求时,服务器会将请求转发给web应用程序,应用程序处理完这个请求后将会返回一个response。在这篇文章我们分析一下flask怎样处理request,又是怎样生成response的,同时我们应该思考,在这个过程中,flask是怎样让url、endpoint、视图函数一一对应的。一旦web应用接收到request,flask就会调用Flask类的call函数。在wsg...原创 2018-07-10 21:48:09 · 2875 阅读 · 1 评论 -
flask上下文
在web程序运行时,可能会有许多请求,这些请求中包含了许多信息,比如url、参数、路由、请求方式等等。 这些信息在视图函数中可能会被用到,它们就是上下文。那么如何保存这些上下文,到了需要的时候再调用呢?因为这些请求是动态的,flask需要动态地访问它们。可能我说的这些不太好理解,下面看例子:from flask import Flaskfrom flask import request,...原创 2018-07-10 21:53:00 · 358 阅读 · 0 评论 -
报错 jinja2.exceptions.TemplateSyntaxError: Unexpected end of template. Jinja was looking for the foll
我在用flask web写前端的时候报错如上,我的html是这样写的:<!DOCTYPE html><html lang="zh-CN"> <head> <meta charset="utf-8"/> <title>Index</title>原创 2018-07-10 21:54:30 · 11697 阅读 · 1 评论 -
sqlalchemy.exc.IntegrityError
sqlalchemy.exc.IntegrityError: (raised as a result of Query-invoked autoflush; consider using a session.no_autoflush block if this flush is occurring prematurely) (_mysql_exceptions.IntegrityError) (1...原创 2018-07-10 21:58:55 · 5552 阅读 · 0 评论 -
flask--url_for函数
一直以来对url_for函数的用法很模糊,看了一篇文章终于有些了解了。https://blog.csdn.net/yannanxiu/article/details/52287870url_for()函数是用于构建指定函数的URL。url_for操作对象是函数,而不是route里的路径。 写一个测试代码:from flask import Flask,url_forapp =...原创 2018-07-10 22:01:04 · 2422 阅读 · 0 评论 -
Flask框架+mySQL数据库:误删migrations文件夹后再次创建时遭遇错误(Can't locate revision identified by ‘xxx’)
因为upgrade老是报错,不知道问题在哪里,所以干脆就删了migrations文件夹,想着重新初始化之后再次升级。但是我用下面两条语句,在第二条的时候报错,错误如上。flask db initfllask db migrate -m "ibit database"后来查了一下,使用了init命令后不但会在程序所在目录下生成一个migrations文件夹,还会在数据库里生成一个...原创 2018-07-10 22:02:39 · 1386 阅读 · 0 评论 -
python中partial的用法
partial 语法:partial(func,*args) 很多函数都带有参数,函数在被调用时,我们要把参数传进去。偏函数的作用在于,当出现该函数需要的部分或者全部参数时,可以把这部分参数和函数绑定,到了全部参数出现或者需要被调用的时候,再调用这个函数。 eg:In [68]: from functools import partialIn [69]: def add(a,...转载 2018-07-09 15:29:40 · 3690 阅读 · 0 评论 -
python __setattr__、__getattr__、hasattr、getattr、setattr函数
__getattr__从对象中读取某个属性时,先从__dicts__属性中寻找,再从__getattr__中查找。在这一过程中,__getattr__被自动调用了。In [43]: class A: ...: def __init__(self): ...: self.name = 'from __dicts__' ...: def...原创 2018-07-09 15:28:28 · 365 阅读 · 0 评论 -
用Python解析Json格式出错
在把json数据格式转化为字典的时候,报错: 代码部分是这样的:from flask import Flask,render_templateimport os,jsonapp = Flask(__name__)app.config['TEMPLATES_AUTO_RELODE']=True@app.route('/')def index(): file_json ...原创 2018-03-25 15:23:11 · 1826 阅读 · 0 评论 -
git错误:fatal: 不是一个有效的对象名:'master'。
初始化了一个git出库之后就想建立分支,语句如下git branch challenge1然后出现如下错误:fatal: 不是一个有效的对象名:'master'。经过百度,发现自己初始化了仓库之后没有提交到缓存,不能创建分支。...原创 2018-03-25 16:45:08 · 6029 阅读 · 0 评论 -
No module named 'flask_sqlchemy'
在用flask框架连接ORM的时候报错,我连的是alchemy。错误不明。查了一些资料,应该是版本不匹配导致的。后面再找原因。原创 2018-03-25 22:31:38 · 842 阅读 · 0 评论 -
ALchemy学习-从mysql数据库读取数据显示到页面
在python中,一般不会在数据库里写SQL语句,而是通过ORM(对象关系映射)将python对象映射为数据库里的数据,实现对数据库的操作。ALchemy是python里功能强大的一款OMR包。我写了一个简单的程序是这样的: 1. http://localhost:3000/ 页面可以访问并且返回预期的页面内容,页面内容需要包含文章标题列表及文章链接地址 2.文章内容可以通过 http:...原创 2018-03-28 10:19:40 · 2066 阅读 · 0 评论 -
使用pandas绘图
python中的matplotlib绘图包功能已经很强大了,但是如果我们使用pandas分析数据,数据格式是DataFrame,就需要用pandas进行图形绘制。这里我主要讲一下DataFrame.plot这个函数如何绘图。用pandas绘图很简单,如下图1所示,我随机生成了一个5*4的二维数组,将它们制成线图。就是图2这样的。Pandas在绘图的时候直接区分了ABCD四个列,把它们当作不同的...原创 2018-04-22 11:32:36 · 583 阅读 · 0 评论 -
python list的两种排序方法
python提供了对list排序两种方法1.使用list内建函数sort排序 list.sort(key=None,reverse=False)eg:In [57]: l=[27,47,3,42,19,9]In [58]: l.sort()In [59]: lOut[59]: [3, 9, 19, 27, 42, 47]上面这种是直接对l列表里面的元素排序,sort()...原创 2018-07-09 15:10:59 · 30494 阅读 · 2 评论 -
python 进程报错
我写了一个很简单的程序来实现多进程,但是出现了一些问题。记录一下。from multiprocessing import Process,freeze_supportfrom run import funcdef func(i): print("This is prcecess %d"%i)if __name__ == '__main__': freeze_suppo...原创 2018-07-09 15:13:53 · 736 阅读 · 0 评论 -
Python生成器next方法和send方法
next方法:生成器的next方法获取yield语句返回的下一个值。也就是说,next函数返回的是yield后面的值,yield b(为了更加直观,可以加括号)In [78]: def fib(n): ...: i,a,b=0,0,1 ...: while i < n: ...: yield b ...: ...原创 2018-07-09 15:17:28 · 853 阅读 · 0 评论 -
python类的三种方法
python类有三种方法。 1.一般方法,即不加任何修饰的,直接用def定义的方法。如:In [14]: class A: ...: def a(self): ...: print('一般方法') ...:In [15]: class_A = A()In [16]: class_A.a()一般方法2.staticmethod方...原创 2018-07-09 15:20:56 · 6104 阅读 · 1 评论 -
python __len__函数
转自此文:https://blog.csdn.net/goodluckac/article/details/53127974如果一个类表现得像一个list,要获取有多少个元素,就得用 len() 函数。 要让 len() 函数工作正常,类必须提供一个特殊方法len(),它返回元素的个数。 例如,我们写一个 Students 类,把名字传进去:class Students(objec...转载 2018-07-09 15:22:12 · 4688 阅读 · 0 评论 -
property函数
property函数用来在新式类中返回属性值。语法:class property(fget[,fset[,fdel[,doc]]]) 参数:fget——获取属性值的函数 fset——设置属性值的函数 fdel——删除属性值的函数 返回值:返回新式类属性eg:In [18]: class C(object): ...: ...原创 2018-07-09 15:23:04 · 982 阅读 · 0 评论 -
Mixin机制
https://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/0013868200511568dd94e77b21d4b8597ede8bf65c36bcd000这篇文章讲的很好。简单来说,Mixin是为了解决继承方面的问题引入的机制。python中的继承方式有两种,单继承和多继承。如果只...转载 2018-07-09 15:23:57 · 710 阅读 · 0 评论