
python
皓阳当空
这个作者很懒,什么都没留下…
展开
-
python3 UnicodeError 'ascii' codec can't encode characters in position...问题解决方法
一:问题环境ubuntu 16.04python3.5django2.0二:问题描述使用django ImageField 字段 在admin后台页面上传图片时,如果图片文件名称中含有中文字符,则报错,具体错误如下:三:解决方案如果你使用了网络上的各种解决方案后,还未真正解决问题,那么应该是系统字符编码设置问题。1.查看当前系统字符编码root@ubuntu~:locale...原创 2020-04-07 21:45:35 · 2781 阅读 · 0 评论 -
Celery+django+redis异步执行任务
Celery+django+redis异步执行任务本文用到的各工具版本:celery 4.0.2django 1.10.3redis 3.2.6 特别注意: 如果你的项目是django框架,那么django-celery,celery-with-redis等等这些东西,都不要用了(这些东西会受python、celery版本的影响,我一直没测通…)。直接pip安装celery 4版本以上原创 2017-01-08 19:51:07 · 8608 阅读 · 3 评论 -
python 多线程实现多客户端连接的 TCP Server
python 多线程实现多客户端连接的 TCP Server最近看《python核心编程》,书中实现了一个简单的1对1的TCPserver,但是在实际使用中1对1的形势明显是不行的,所以研究了一下如何在server端通过启动不同的线程(进程)来实现每个链接一个线程。其实python在类的设计上已经考虑到了这一方面的需求,我们只要在自己的server上继承一下SocketServer.BaseRequ转载 2017-01-23 20:25:09 · 10144 阅读 · 0 评论 -
python 模拟websocket通信
python 模拟websocket通信 以前,很多网站使用轮询实现推送技术。轮询是在特定的的时间间隔(比如1秒),由浏览器对服务器发出HTTP request,然后由服务器返回最新的数据给浏览器。轮询的缺点很明显,浏览器需要不断的向服务器发出请求,然而HTTP请求的header是非常长 的,而实际传输的数据可能很小,这就造成了带宽和服务器资源的浪费。 Comet使用了AJAX改进了轮原创 2017-03-08 16:08:11 · 19054 阅读 · 3 评论 -
django 数据序列化的实现
django 数据序列化的实现 为什么要自己去序列化呢?为什么不用restful呢?django做全栈开发真的很不错,但做前、后端分离开发时,某些方面可能需要调整。比如,数据的序列化这个问题,跨域问题;当然,这都不是什么大问题。。。下面说说数据序列化问题后端与前端通过json数据格式交互数据;django 通过orm读取的数据,不能直接用django的serializable或python的序原创 2017-01-16 18:54:10 · 5834 阅读 · 4 评论 -
django解决跨域请求的问题
django解决跨域请求的问题解决方案1.安装django-cors-headerspip install django-cors-headers2.配置settings.py文件INSTALLED_APPS = [ ... 'corsheaders', ... ] MIDDLEWARE_CLASSES = ( ... 'corsheaders.middle原创 2017-01-14 17:49:28 · 39764 阅读 · 19 评论 -
深入分析 Python 的垃圾回收机制
深入分析 Python 的垃圾回收机制Python的GC模块主要运用了“引用计数”(reference counting)来跟踪和回收垃圾。在引用计数的基础上,还可以通过“标记-清除”(mark and sweep)解决容器对象可能产生的循环引用的问题。通过“分代回收”(generation collection)以空间换取时间来进一步提高垃圾回收的效率。一、引用计数在Python中,大多数对象的生转载 2017-07-28 18:54:34 · 274 阅读 · 0 评论 -
Python: 你不知道的 super
Python: 你不知道的 supersuper() 的入门使用在类的继承中,如果重定义某个方法,该方法会覆盖父类的同名方法,但有时,我们希望能同时实现父类的功能,这时,我们就需要调用父类的方法了,可通过使用 super 来实现,比如:class Animal(object): def __init__(self, name): self.name = name de转载 2017-08-15 15:26:11 · 377 阅读 · 0 评论 -
python logging模块在多进程多日志文件写入时要注意的问题
python logging模块在多进程多日志文件写入时要注意的问题项目背景根据需求,父进程负责创建并维护子进程的数量,具体开启的子进程个数为服务器cpu的核心数。子进程负责从redis任务队列中获取任务,并执行任务。子进程在执行任务过程中,需要打印日志到各任务对应的日志文件中(一个任务对应一个日志文件)。问题描述进程A在执行任务a时,会创建日志文件a.log,并将执行任务a时原创 2018-01-13 21:57:44 · 9115 阅读 · 6 评论 -
python操作hbase(基于thrift服务)
一:环境说明ubuntu 16.04 python2.7 happybase (python包, 执行命令 pip install happybase 安装) hbase v1.3.1 (docker 镜像) thrift 特别注意 thrift 、thrift2,新版本的hbase,默认使用thrift2,而thrift2相比thrift,去掉了很多对hbase的命令支...原创 2018-08-25 11:29:49 · 1249 阅读 · 0 评论 -
支付宝app支付功能-服务端的实现-python3版
支付宝app支付功能-服务端的实现-python3版一:需求说明二:支付宝app支付处理流程三:所需依赖3.1 依赖库3.2 支付配置3.2.1 沙箱环境配置3.2.2 正式环境配置四:接口开发4.1 创建订单接口插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式...原创 2019-05-27 15:00:48 · 2654 阅读 · 4 评论 -
微信app支付功能-服务端的实现-python3版
微信app支付功能-服务端的实现-python3版一:需求说明二:微信app支付处理流程三:所需依赖3.1 支付配置四:接口开发4.1 创建订单接口4.2 微信异步回调接口4.3 订单状态查询一:需求说明在自有的android app中加入微信支付功能,app内点击支付按钮,需app调起本机上的微信app进行支付。二:微信app支付处理流程上图为微信官方支付流程图,由图可见,商户服务端需...原创 2019-05-27 15:53:29 · 1765 阅读 · 3 评论 -
系统编码设置导致错误:UnicodeEncodeError: 'ascii' codec can't encode characters in position
系统编码设置导致错误:UnicodeEncodeError: 'ascii' codec can't encode characters in position一:问题环境二:问题描述三:问题原因3.1:python指定encoding3.2:系统不支持中文一:问题环境ubuntupython3二:问题描述print打印中文读取的文本里含有中文会报错:UnicodeEncodeErr...原创 2019-06-11 14:07:14 · 16462 阅读 · 1 评论 -
在Django中使用mysql时的常见问题及配置
问题1:python manage.py migrate报错:No module named MySQLdb原因:系统中没有安装mysql-python模块解决方案:安装mysql-python模块1、sudo apt-get install python-setuptools2、sudo apt-get install libmysqld-dev3、sudo原创 2016-12-11 10:16:47 · 703 阅读 · 0 评论 -
django 1.10 不能正确的通过models创建数据表
django1.7之前的版本都是:python manage.py syncdbdjango1.7及之后的版本做了修改,把1步拆成了2步,变成:python manage.py makemigrationspython manage.py migrate注:老版本中的app项目文件里也没有migrations文件夹,都是新版本中逐渐加出来的。亲测成功!原创 2016-05-31 10:27:09 · 666 阅读 · 0 评论 -
漫谈Python 闭包
作者:黄哥链接:https://zhuanlan.zhihu.com/p/21680710来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。在计算机科学中,闭包(英语:Closure),又称词法闭包(Lexical Closure)或函数闭包(function closures),是引用了自由变量的函数。这个被引用的自由变量将和这个函数一同存在,即使转载 2016-08-05 19:18:34 · 407 阅读 · 0 评论 -
理解Python中的装饰器
【文章转自:http://www.cnblogs.com/rollenholt/archive/2012/05/02/2479833.html 】【在此感谢原作者】文章先由stackoverflow上面的一个问题引起吧,如果使用如下的代码:@makebold@makeitalicdef say(): return "Hello"打印出如下的输出:转载 2016-08-05 19:56:51 · 287 阅读 · 0 评论 -
Ubuntu16.04下python+PyCharm开发环境的搭建
Ubuntu16.04下,默认安装了python2.7和python3.5,在终端下,输入“python” 或“python3”可查看具体版本。1.安装PyCharm前,先配置PyCharm的JDK环境Pycharm需要JDK环境解析,否则在安装过程中报错。依次执行一下几条commandsudo add-apt-repository ppa:webupd8team/jav原创 2016-10-23 16:07:11 · 23235 阅读 · 7 评论 -
Python 性能优化
因为GIL的存在,Python很难充分利用多核CPU的优势。但是,可以通过内置的模块multiprocessing实现下面几种并行模式:1、 多进程并行编程:对于CPU密集型的程序,可以使用multiprocessing的Process,Pool等封装好的类,通过多进程的方式实现并行计算。但是因为进程中的通信成本比较大,对于进程之间需要大量数据交互的程序效率未必有大的提高。2、 多线程并行原创 2016-10-16 17:16:48 · 518 阅读 · 0 评论 -
关于Python类属性与实例属性的讨论
【感谢segmentfault.com站的作者_ZHAO,以及bluecrystal.iteye.com站的作者bluecrystal!】转自:点击打开链接标题名字有点长。之所以想写这个文章是因为碰巧看到网上一篇关于Pyhon中类属性及实例属性区别的帖子。因为我之前也被这个问题困扰过,今天碰巧看到了这篇帖子,发现帖子的作者只是描述了现象,然后对原因的解释比较含糊,并没有从根本上解释这个原创 2016-10-28 11:47:48 · 400 阅读 · 0 评论 -
python循环语句中的else,break和continue
本题讨论Python的for…else和while…else语法,这是Python中最不常用、最为误解的语法特性之一。Python中的for、while循环都有一个可选的else分支(类似if语句和try语句那样),在循环迭代【正常】完成之后执行。换句话说,如果我们没有以break、return、异常等不正常方式退出循环,那么else分支将被执行。如下例,循环正常完成后,else会被执行:原创 2016-11-13 11:54:34 · 1877 阅读 · 0 评论 -
python中的__name__ =="__main__"是什么意思呢
__name__系统变量指示模块应如何被加载,他的值为"__main__"时表示当前模块是被直接执行。由于主程序代码无论模块是被导入还是直接被执行都会运行,所以我们需要一种方式在运行时检测该模块是被导入还是被直接执行。该方式也就是__name__系统变量。如果模块是被导入,__name__的值为模块名字;如果是被直接执行,__name__的值为"__main__"。此处所说的模块可以简原创 2016-11-13 11:56:17 · 3585 阅读 · 0 评论 -
buntu安装MySql for Python的出错及解决
十分感谢这位作者的总结:http://blog.youkuaiyun.com/zlp1992/article/details/44521135转载 2016-11-15 19:47:31 · 371 阅读 · 0 评论 -
Python知识点汇总
Python常用函数本Markdown编辑器使用[StackEdit][6]修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键# _*_ coding: utf-8 _*_"""类型和运算----类型原创 2016-12-22 13:58:03 · 12387 阅读 · 3 评论 -
python fabric实现远程部署
python fabric实现远程部署需求描述在多人协同开发项目的过程中,几乎每天我们都要提交代码到git服务器,然后部署到测试服务器,每天都在敲那重复的几行命令,实在是无趣。怎么办?运维自动化!接下来就说说fabric这玩意儿,替我们完成一些重复繁杂的工作,相信你会跟我一样喜欢上它的!本文项目背景我们这次做的项目是用的django框架,每天我们提交代码到git服务器后,都要手动上传代码到测试服务器原创 2017-01-04 23:07:25 · 969 阅读 · 0 评论 -
python实现数据导出到excel--普通格式
python实现数据导出到excel–普通格式 此文是在django框架下编写,从数据库中获取数据使用的是django-orm用python导出数据到excel,简单到爆!(普通的excel格式)安装xlwtpip install xlwt编写py文件from xlwt import *import StringIOfrom apps.song.models import Songdef原创 2017-01-14 17:13:18 · 35261 阅读 · 1 评论 -
Celery+python+redis异步执行定时任务
Celery+python+redis异步执行定时任务我之前的一篇文章中写了【Celery+django+redis异步执行任务】 博文:http://blog.youkuaiyun.com/apple9005/article/details/54236212 你会发现,这些代码并不依赖django框架,随便写到一个py文件中,就可以轻松的执行成功,这是因为这些代码并没有用到django-celery,dj原创 2017-01-14 23:29:31 · 20622 阅读 · 2 评论 -
Python是值传递?引用传递?
具体分析请参见博文:http://www.cnblogs.com/buptldf/articles/4976561.htmlhttp://blog.youkuaiyun.com/vernice/article/details/50832069简单概括一下上面的两篇博文,就是:1 python中的一切事物皆为对象,并且规定参数的传递都是对象的引用。2 python参数传递都是“传对象引用原创 2016-08-05 08:54:24 · 1128 阅读 · 0 评论