首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > perl python >

收集记录一些在使用Python、Django中遇到的有关问题及解决办法

2012-08-31 
收集记录一些在使用Python、Django中遇到的问题及解决方法收集记录一些在使用Python、Django中遇到的问题及

收集记录一些在使用Python、Django中遇到的问题及解决方法

收集记录一些在使用Python、Django中遇到的问题及解决方法

?

由于工作原因,最近开始学习Python、Django。

?

Python是一种面向对象、直译式计算机程序设计语言,也是一种功能强大的通用型语言,已经具有近二十年的发展历史,成熟且稳定。Python支持命令式编程、面向对象程序设计、函数式编程、面向切面编程、泛型编程多种编程范式。Python是一门跨平台的脚本语言。[http://zh.wikipedia.org/wiki/Python]

?

不过Python虽然号称是跨平台的,但是如果你是一个初学者——我就是一个初学者,并且还真的试图跨平台应用它,很可能是一场噩梦,很可能在环境的适配方面花费很多时间。

1.例如:WindowsError的问题。

如果你有如下代码:

            try:                os.remove(file_full_path)            except (WindowsError, OSError):                pass
?

如果捕捉到了

OSError

这个异常,那么就会发现在Windows系统下是没有问题的,但是到了Linux下就会出问题。

因为在Python的Linux实现中,就没有定义

WindowsError

这个异常。这样就会报

WindowsError is not available on linux?

参见:http://mail.python.org/pipermail/python-list/2009-November/1226720.html

?

2.magic模块的安装。Windows安装magic模块是一件很痛苦的事情,至少我是尝试了至少两天的时间,才找到方法。

单纯安装magic模块可能并不复杂,可以使用easy-install安装

[命令:python -m easy_install python-magic]

?也可以下载源码,解压,使用python setup.py install安装

??? url:https://github.com/ahupp/python-magic

不过,困难的是,magic模块需要libmagic库的支持,这是和平台相关的。

网站 https://github.com/ahupp/python-magic 上告知了需要哪些dll,但是少说了一个pcre3.dll。

经过试验——确实是试验,共需要magic1.dll,pcre3.dll,regex2.dll,zlib1.dll四个dll。

这四个dll可以在GnuWin中获得,并且放到Path环境变量可以找到的地方(但是不要放到System32下,可能不行,至少我没成功,怀疑可能和当前用户的权限有关,不过,没有验证)。

?

不要忘记,Django自带的开发服务器是单线程的
1 楼 tokyo2006 2012-05-13   不错,经验之谈是最好的

热点排行