Shedskin是一个编译器工具,可以将Python代码编译为C++语言。先说结论吧,这玩意现在就只是个玩具,因为使用ShedSkin编译的程序不能自由使用Python标准库,目前只支持大约17个常用模块:
bisect
collections
ConfigParser
copy
datetime
fnmatch
getopt
glob
math
os (some functionality missing under Windows)
os.path
random
re
socket
string
sys
time
但抱着学习的心态我们还是可以学习使用该工具的。下面以最简单的Hello world为例子进行演示。
在 https://github.com/shedskin/shedskin 下载shedskin。如果我们的电脑是Ubuntu20.04,则其自带的python为3.8版本,我们下载Shed Skin v0.9.5(注意:不要下载新版本的,比如Shed Skin v0.9.7 否则编译会报错)
解压缩,进入源码目录,安装pip:
apt install python3-pip
我们可以通过其官方文档 Shed Skin — shedskin 0.9.4 documentation 来安装。
python3.8 setup.py install
执行命令shedskin后,看到输出如下,表示安装成功了。
新建一个文件test.py,内容为:
print('hello, world!')
将test.py编译为c++程序:
shedskin build test
执行完后,即会生成test.cpp等C++文件
然后执行make,就会生成C++的可执行文件
执行./test ,可以看到输出了Hello,World!