
python
ikebo
ikebo.cc
展开
-
Python 中的 “==” 与 “is”
在python中,== 与 is 之间既有区别,又有联系,本文将通过实际代码的演示,力争能够帮助读到这篇文章的朋友以最短的时间理清二者的关系,并深刻理解它们在内存中的实现机制。扯淡的话不多说,下面马上呈上我的第一张图:通过上面代码的比较,我想很容易看得出,” is” 是用来比较 a 和 b 是不是指向同一个内存单元,而”==”是用来比较 a 和 b指向的内存单元中的值是不是相等。下面敲...转载 2018-03-07 21:58:26 · 265 阅读 · 1 评论 -
爬取京东数据
import refrom selenium import webdriverfrom selenium.common.exceptions import TimeoutExceptionfrom selenium.webdriver.common.by import Byfrom selenium.webdriver.common.keys import Keysfrom seleni...原创 2018-10-31 22:36:21 · 874 阅读 · 0 评论 -
uwsgi概念和作用
WSGIWSGI是一种WEB服务器 == 网关接口 ==。 是一个Web服务器(如nginx)与应用服务器(如uWSGI)通信的一种规范(协议)。在生产环境中使用WSGI作为python web的服务器。Python Web服务器网关接口,是Python应用程序或框架和Web服务器之间的一种接口,被广泛接受。WSGI没有官方的实现, 因为WSGI更像一个协议,只要遵照这些协议,WSGI应用(A...转载 2018-10-10 09:03:42 · 502 阅读 · 0 评论 -
重写flask-cache的cache_key生成机制
      flask-cache 默认将 (view/%s) % request.path 作为cache_key,但有时并不能满足实际需要,例如当url中有参数,且参数也要作为cache_key的一部分时,那么不同的参数就会共用一个缓存,这显然是错的。   &a原创 2018-10-09 16:30:46 · 921 阅读 · 0 评论 -
python 装饰器 & 可同时接受有参数与无参数的装饰器
昨天下午仔细学习了装饰器的内容,算是比较明白了。标题的题目来源于这里from functools import wrapsdef log(ft): if not isinstance(ft, str): @wraps(ft) def wrapper(*args, **kwargs): print('wrapper') ...原创 2018-10-12 09:06:32 · 1136 阅读 · 0 评论 -
python 参数收集
了解python的参数收集蛮久了,但一直不理解很多第三方库源码中的使用,今天在读flask源码的时候突然明白了。比如: def run(self, host='localhost', port=5000, **options): from werkzeug.serving import run_simple if 'debug' in options: ...原创 2018-10-11 11:41:06 · 393 阅读 · 0 评论 -
sqlalchemy 中 desc 的使用
是这样:items = Item.query.order_by(Item.date.desc()).all()而不是这样:items = Item.query.order_by(desc(Item.date)).all()更不是说了一大堆SQLALCHEMY的查询方式别人看半天也没找到自己需要的。...原创 2018-08-02 22:59:57 · 5713 阅读 · 1 评论 -
Flask 按路径返回图片
1,读取图片数据(二进制读取) 2,返回数据,并将mimetype设为图片格式对应的mimetype示例代码def get_image(uri): imgPath = '../../static/uploads' + uri mdict = { 'jpeg': 'image/jpeg', 'jpg': 'image/jpeg', ...原创 2018-08-05 22:44:48 · 11431 阅读 · 0 评论 -
nginx + uwsgi + flask 项目部署
1,下载nginxsudo apt-get install nginx默认是自启动,访问主机地址可以看到欢迎界面2, flask 项目 删除/var/www下的html目录。 在/var/www目录下新建一个目录test作为flask项目。 启动flask项目(host设为0.0.0.0)访问主机对应端口可以看到flask项目的首页。3, nginx 反向代理这个项目 n...原创 2018-07-20 12:14:22 · 401 阅读 · 0 评论 -
Flask 解决跨域请求情况下PUT及DELETE请求变成OPTIONS请求的问题
可以在后端响应头上加上Allow-origin解决跨域问题,但是PUT和DELETE请求会变成OPTIONS请求,这时候如果后端不做处理的话,浏览器是不会再发送后续请求的如下:// 前端代码$('.todos').on('click', '.cell-control', function(event) { log('yes'); var cell = $(event.ta...原创 2018-07-02 21:04:05 · 8902 阅读 · 0 评论 -
Python 重命名文件夹中带广告的文件
网上有些资源文件名上一般带有广告,导致文件名很长且影响阅读, 可以类似这样import ospth = r'D:\BaiduYunDownload\萧井陌WEB前端课程'def rename(pth): for file in os.listdir(pth): xfile = os.path.join(pth,file) if os.path....原创 2018-06-25 16:33:08 · 172 阅读 · 0 评论 -
Pycharm 配置 sqlite 和 mongodb 可视化工具
sqlite是python自带的轻量级数据库,适合本地开发时使用,mongodb近年逐渐流行,有很多相较于关系型数据库的诸多优点。1,连接sqlite数据库,可视化操作sqlite2, 配置mongodb可视化操作插件 注意,前提是mongodb服务器开启状态。...原创 2018-04-24 23:30:23 · 1792 阅读 · 0 评论 -
PyCharm 导入包时显示Unresolved reference 的问题
问题:包明明就在眼前,但就是出红线并提示Unresovled reference, 虽然运行没有问题,但看着很不舒服。原因是pycharm的默认根目录是source,适用绝对路径的话会从source目录找。解决方法有二,一是使用相对路径,二是设置source路径。具体可以参考这个地址: https://blog.youkuaiyun.com/u014496330/article/deta...原创 2018-04-11 20:37:47 · 3000 阅读 · 0 评论 -
python 列表推导式
python列表推导式>>> aList = [x*x for x in range(10)]相当于:>>> aList = []>>>for x in range(10):... aList.append(x*x)下面通过几个事例来进一步展示列表推导式的强大功能1.使用列表推导式实现嵌套列表的平铺&g...原创 2018-03-06 14:39:20 · 863 阅读 · 0 评论 -
windows 安装markupsafe 遇到 UnicodeDecodeError 解决方法
markupsafe 是flask依赖的包问题:原因有些Windows cmd编码格式和安装markupsafe所依赖的有关文件编码格式不一致。解决方法有二:一是去官网下载markupsafe,然后pip install markupsafe.whl 二是安装git bash 再 pip install markupsafe ,原因是git bash 的编码格式与其一致。...原创 2018-03-17 17:34:57 · 602 阅读 · 0 评论 -
python 中 input 与 raw_input 的区别
Python 中 input 与 raw_input 的区别key: input会假设用户输入的是合法的Python表达式,而通过raw_input得到的输入将作为原始数据eg:a = input()b = raw_input()print "a: " + repr(a)print "b:" + repr(b)>2*32*3>6'2*3'...原创 2018-03-02 23:39:39 · 218 阅读 · 0 评论 -
python中的字符串表示: str 与 repr
python 中的字符串表示: str 与 repr在python解释器中:>>> "Hello, " + "world!">'Hello, world!'打印的字符串还是被括号括起来的。这是因为Python打印值的时候会保持该值在Python代码中的状态,而不是你希望用户所看到的状态。如果使用print语句,结果就不一样了:print "Hello...原创 2018-03-02 23:28:03 · 314 阅读 · 0 评论 -
python re.compile(?P<name>)
正则还可以这样匹配。。。 geeksquiz 网站(https://www.geeksforgeeks.org/functions-python-gq/)提供代码题,可用于自测一门语言的掌握情况,今天做python的题有了有趣的发现——原来正则还可以这样写>>>sentence = 'cats are fast' regex = re.compile('(?P<...转载 2018-03-08 21:51:17 · 2433 阅读 · 0 评论 -
python format 格式化百分号
格式化字符串为什么都要写一大堆呢"{:.1%}".format(0.4)'40.0%'原创 2019-01-31 11:40:48 · 1726 阅读 · 0 评论