python3 compile_python3.2的pycompile

py_compile是一个stdlib模块,可以生成给定Python源代码的字节码.很少需要它.

要编译Python 3源代码,必须使用随附的py_compile版本,如果从命令行使用它,则必须使用Python 2.7中的版本:

$python3 -mpy_compile your_script.py

要更改存储pyc文件的默认位置,可以使用py_compile.compile() function的cfile参数.

Does the byte code make the script run any faster?

它可能(以微不足道的数量). Python编译器没有做太多,所以速度很快.

以下是字节代码在人类可读形式中的样子:

>>> def f(o):

... with o:

... pass

...

>>> import dis

>>> dis.dis(f)

2 0 LOAD_FAST 0 (o)

3 SETUP_WITH 5 (to 11)

6 POP_TOP

3 7 POP_BLOCK

8 LOAD_CONST 0 (None)

>> 11 WITH_CLEANUP

12 END_FINALLY

13 LOAD_CONST 0 (None)

16 RETURN_VALUE

所有繁重的工作都留给python解释器,它在运行时解释字节码.

Or is this only for distribution?

文档提供了一个用例:一个带有Python模块的共享目录,只有窗帘用户可以编写.您可以禁用缓存字节代码到磁盘,以便可以使用存储在只读位置的py文件,而无需相应的pyc文件.

Why is it rarely used?

通常,pyc文件是通过构建/安装过程创建的.如果没有pyc文件,则可以在导入模块时即时创建它们:

$python -c 'import some_module'

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值