编程技术

Nginx+Uwsgi部署Django程序

Roy
原来使用apache进行部署,感觉内存占用大以及速度比较慢就换成了nginx+uwsgi的方式,结果完爆apache啊! 首先安装nginx以及uwsgi: yum install nginx pip install uwsgi 然后编辑uwsgi的配置文件,这里我使用ini文件格式,示例如下: [uwsgi] socket = 127.

python中and-or小技巧

Roy
首先,python中逻辑运算从左到右进行,and运算返回第一个假值,若都为真则返回最后一个真值。or运算返回第一个真值,若都为假则返回最后一个假值。 其次,python中0,(),[],{},None,空字符串都是假。 下面用简单的例子说明一下: def f(): print "in f" return False def t(): print "in t" return True def n(): print "in n" In [105]: r = t() and f() or n() in t in f in n In [106]: r In [107]: r = t() and n() or f() in t in n in f In [108]: r Out[108]: False In [111]: r = f() and n() or t() in f in t In [112]: r Out[112]: True 上面我们定义了3个函数,没返回值的情况下函数会默认返回None。这里有个地方需要注意,虽然函数可以返回true、false、none,但函数本身都是为真的,比如:

64位win7安装mysql-python

Roy
64位win7使用pip安装mysql-python时提示unable to find vcvarsall.bat, 网上很多说这个解决这个需要安装那个MinGW,不过我安装并设置环境变量后依然没解决这个问题, 错误提示倒是变成了什么gcc错误一类的。 而从网上下载的win安装包都是32位,在我的机器上提示找不到python,找了很久后终于发现一个地方:http://www.lfd.uci.edu/~gohlke/pythonlibs/ 上有64位的, 而且这上面还有很多其他的64位三方包。 方便国内同学下载我把mysql-python转存到了我的网盘:http://pan.baidu.com/s/13vgjs

Windows下的django批处理运行脚本

Roy
回来半个月,终于抽出时间写点东西了。最近这天气真是让人不开心阿~不过昨天居然见到了彩虹,突然想起来在飞机上看见的彩虹是直立在太阳两边而不是桥形的,各有各的美感。 至于在win下如何安装python、setuptools、pip等网上很多这里不再重复,可是那些大小姐们向我反映说她们不会“运行cmd,输入python manage.py runserver”。正所谓收人钱财替人消灾,干脆写个批处理让她们双击运行算了,内容如下: @echo off python %cd%\manage.py runserver pause 真是被微软“惯坏了”的孩子们阿….

虚拟环境pycurl的import错误

Roy
今天需要在虚拟环境下使用pycurl,使用pip安装时候没问题,不过再代码中import后则报错: ImportError: pycurl: libcurl link-time ssl backend (nss) is different from compile-time ssl backend (none/other) 解决方法:

调试python程序

Roy

怪不得这几天头疼的厉害,原来是发生了2件大事:官方的XP彻底和我们告别了and爆发了OpenSSL HeartBleed漏洞。这个漏洞可以说是一场大地震,不知道又会有多少网站被“扒光脱裤”,过一阵又得改密码玩了。面对这种网络安全问题,真的是一种待宰羔羊的无力感。

调试python程序我知道有3个东东:pdb,ipdb,pudb。

第一个是python自带模块,第二个如果安了ipython的话貌似自己就被安装了,最后一个有图形界面,十分复古的——蓝底,真是让人怀念。后2个都可以使用pip安装。 ipdb支持语法高亮,不过貌似中文支持不太好。