最近在做一个关于服务器虚拟化的一个项目,需要在7000+行的.py文件中在合适的位置加上自己写的功能。功能原型(在控制台单元测试过了)写完之后,加到源码中,然后放到服务器上,看似很简单,但两天炸了好几次服务器,炸到怀疑人生…出现了问题:新的.py文件放到服务器上后,所有功能全都失效。最后沉下心来,仔细观察发现服务器中不仅有.py文件,还有.pyc和.pyo文件,原来是学的java和c++,经过类比,一拍大腿想到服务器可能执行的是字节码文件而不是练习时直接执行的源文件,那么问题来了再看.py和.pyc的修改时间,.py为正常,但.pyc的时间为2015年等等…原来新的.py并没有编译成.pyc,编译失败,找到原因,那么新问题来了,7000+行的源码,我要全做单元测试???就算用二分法做也要耗费很多时间,于是迷茫,然后在网上扒.py编译成.pyc的方法,最后找到了,并且有意外惊喜!!!
这是找到的在本地将.py文件编译成.pyc文件的方法,代码如下:
import py_compile
py_compile.compile('.py文件路径')
运行时发现,他不仅能编译,还能将失败原因返回到控制台上,如下图
哪一行错了直接就报出来了,ide发现不了的错误他全报出来了!!!
现在,问题成功解决,激动的和大家分享这一神器,希望对大家有所帮助!!
注:转载请注明出处http://blog.csdn.net/edwinbalance