Python

共7篇文章。

用homebrew来设置Python开发环境

• Dev Notes

Homebrew已经是macOS里非常好的包管理工具了,目前在macOS上设置Python开发环境主要解决几个问题

  • Python的多个版本,python2和python3共存,毕竟还有一些老的项目在用Python2
  • virturalenv,没有这个不同项目怎么活
  • pip安装一些扩展的问题
brew install python2 python3
pip install virtualenv virtualenvwrapper

在安装mysql-python的时候可能会遇到openssl头文件无法找到的问题

阅读全文… ( 本文约195字,阅读大致需要1分钟 )

Django中使用多数据库和裸SQL

• Dev Notes

有时候一个项目可能会使用多个数据库,而且数据来源可能不同,在Django中支持多数据库,同时不用ORM的情况下直接执行SQL的方法如下,做个笔记

阅读全文… ( 本文约150字,阅读大致需要1分钟 )

用uwsgi和nginx来跑moinmoin

• Dev Notes

抽了点时间把Woodpecker的wiki放到了uWSGI和Nginx下来了,中间有一个小地方折腾了我好几趟,所以记一下。安装之类的就不说了。

在Nginx里配置了uwsgi_pass之后,访问wiki一直会多带过去/moin这个url_prefix,所以默认的设置对于wiki放在根下的人来说可能什么都不用动。我以为是uwsgi处理的时候是把/moin也当成一个页来处理的。所以就想着把/moin从$request_uri里直接拿掉,把后面的部分传给uwsgi。

阅读全文… ( 本文约628字,阅读大致需要2分钟 )

Python里怎么按数切字符串

• Dev Notes

有个同事问Python里怎么把字符串按每两个切成一个列表。给了个答案

def splitByNumber(s,n):
  for i in range(0,len(s),n):
  yield s[i:i+n]

用匿名函数可以写成一句话

splitByNumber = lambda s,n: map(lambda x: s[x:x+n],range(0,len(s),n))

结果如下

splitByNumber('fuckgfw',2)
['fu', 'ck', 'gf', 'w']
splitByNumber('fuckgfw',3)
['fuc', 'kgf', 'w']

让python-ldap与python25以及CentOS 4.x和谐共处

• Dev Notes

最近写的一个东东要用python25和python-ldap,但是使用的那台主机是python23、ldap2.2.x和python-ldap2.0.1。安装了一个python25,python-ldap是2.3.8,编译失败,openldap2.2太老了,python-ldap2.3.8不向下兼容了。

阅读全文… ( 本文约374字,阅读大致需要1分钟 )

在Mac OS X 10.5下安装pysvn

• Dev Notes

在python中与svn进行通信交流是少不了pysvn这个C扩展的,但无论是在FreeBSD还是Mac OS X下安装这个家伙都是对自己RP的一种考验。其实错误主要来自编译的时候会有一个dylib找不到

powerpc-apple-darwin9-g++-4.0.1: /opt/local/libpython2.5.dylib: No such file or directory
make: *** [pysvn/_pysvn_2_5.so] Error 1

那么就改造一下Makefile吧,patch如下

阅读全文… ( 本文约222字,阅读大致需要1分钟 )