发布python应用程序
【windows+python3.1.2】
发布python应用程序是个很麻烦的事,因为<1>无法编译原生code<2>每个版本的字节码不同<3>如果直接上源码会损害自己的利益——等等
方法1——手动打包
怎么打包呢?一个python文件夹要二十多MB啊!
yes!我们就要清理无用的东西!
先写一个win.py文件:
x = int(input("please a number: "))
print("your number is:",x)
再写run.bat:
@python -m py_compile win.py
@python win.pyc
@pause
然后把python文件夹里的文件全部复制到win和run的目录下。
现在开始精简——
1.先搜索所有的.txt,删除
2.删除Doc目录(你认为用户会去看python的文档吗?)
3.删除Tools目录
现在开始判断,用到tcl没?用到额外的库没?用到unicode没?用到ctypes没?然后进入各个目录进行删除额外的文件。因为我们的win.py什么都没有用到,所以删除除了python[.exe]外的所有东西,搞定!运行run.bat照样运行。
然后——打包所需的库,再按相同的办法去除无用的东西(我测试时用^x^v来测试,比较简便,你认为什么方法比较方便?)
方法2——用户操作
这个方法对咱编写者来说简单,也就是只打包程序用到的、RUNTIME不自带的、对咱和用户来说都是额外的——库,咱光打包它,好了,写个readme,要求用户手动下载runtime即可,不过为了一个小程序、、装个居然要20多MB的runtime。。。有点不值……
但是呢,对比较大型、复杂或属于内部交流类型的程序,可以用这个方法;甚至,你可以只装上字节码,写readme要求用户把所需的所有东西装好就行了!(不过估计就没多少用户了)
好了,这下你就不用被py2exe之类的程序、配置迷惑,好好地用系统自带的pyc吧!
相关文档:
Python http://www.python.org/download/ wxPython http://www.wxpython.org/download.php#binaries Vpython http://vpython.org/contents/download_windows.html Matplotlib http://sourceforge.net/projects/matplotlib/files/matplotlib/ PyGlet http://www.pyglet.org/download.html PyGame http://www.pyga ......
Ruby和Python的语法比较
其实Ruby和Python非常接近,比大多数别的语言要接近的多,所以喜欢用啥就用啥(大实话,虽然也是废话)。语法上的差别虽然有那么一点,大部分是syntax sugar,我斗胆稍微列几个(python我也忘得差不多了,不对的大家尽管来鞭尸吧),但是主要差异还是设计思想上的:灵活 ......
小白和小菜是大学同学,这不快要毕业了,俩人一合计,找个培训班学点东西,武装一下头脑,顺便解决就业问题。
“你们要报哪个班啊?”接待他们的年轻小姐热心地问道。
“你们这里哪个班最好?”小白不假思索地说,“当然是报最好的班啦。”
“我们公司的培训项目都很好”小姐笑 ......
代码+结果,不做解释
当然,对于python没有virtual function一说,估计当作对比一个例子看看吧。
#include <iostream>
using namespace std;
class base
{
public:
virtual void foo() { cout << "base" << endl; }
base() { foo() ;}
};
class derive: public base
{
pub ......