可爱的 Python:动态重新装入
2008-11-13 13:20:12 来源:WEB开发网在 dyn_txt2html.py 脚本中,请注意当执行 from t2h_textfuncs import * 语句时,所有以前在 dmTxt2Html 中定义的函数(如 Typographify() )都将由 t2h_textfuncs 版本的同名函数替换。当然,如果 t2h_textfuncs 的函数被注释掉了,则不会被替换。
有件小问题得注意,不同的系统以不同的方式处理写入 STDERR。在类 UNIX 系统中,运行脚本时可以重定向 STDERR;但是在当前 OS/2 外壳和 Windows/DOS 中,STDERR 消息将附加到控制台输出。您也许要将以上的错误/警告写到日志文件中,或者只习惯于将 STDOUT 定向到文件(可能会更有用)。例如:
'dyn_txt2html' 的命令行会话
G:txt2html> python dyn_txt2html.py test.txt > test.html
Cannot currently download Txt2Html updates
错误转至控制台;经转换的输出转至文件。
一件更有趣的事情是 dyn_txt2html.py 为什么不下载整个 dmTxt2Html 模块,而仅下载支持模块。当然这是有理由的。 t2h_textfuncs 支持模块远远小于主 dmTxt2Html 模块,特别是因为大多数函数已经过删节/被注释掉。在调制解调器连接上,它的速度明显快很多。但下载大小并不是主要原因。
对于 Txt2Html,如果用户自动下载整个最新模块也没关系。但程序逻辑是 分布式 的系统(特别是维护责任也是分布式的)会发生什么情况呢?您也许会让 Alice、Bob 和 Charlie 分别负责模块 Funcs_A 、 Funcs_B 和 Funcs_C 。他们每个人都对他们负责的函数进行定期(且独立)更改,并将最新和最好的版本上传到他们自己的网站(如 http://alice.com/Funcs_A.py)。在这种情况下,让三个程序员都更改同一个主模块不太可行。但可以直接扩展类似于 dyn_txt2html.py 的脚本以在启动时尝试导入 Funcs_A 、 Funcs_B 和 Funcs_C (如果不能获取这些资源,则会退到 MainProg 版本)。
- ››可爱毛绒长靴 《庄园物语》皮草系列低调亮相
- ››动态调用对象事件
- ››python操作sharepoint对象模型
- ››Python 2.6.2的.pyc文件格式
- ››Python 2.6.2的字节码指令集一览
- ››Python 测试框架: 用 Python 测试框架简化测试
- ››Python 测试框架: 寻找要测试的模块
- ››Python的class系统
- ››Python 和 LDAP
- ››python图形处理库PIL(Python Image Library)
- ››Python图形图像处理库的介绍之Image模块
- ››Python和Google AppEngine开发基于Google架构的应...
更多精彩
赞助商链接