Python中的.pyc文件的共享对象?

时间:2012-10-22 12:02:32

标签: python python-2.4

已编辑(澄清问题):

我有一个包含许多.py文件的包的python 2.4脚本。 .Pyc文件是自动创建的。

我可以从许多.pyc文件中只制作一个.pyc文件吗?

客户不应该获取.py文件。在最好的情况下,他应该只获得一个.pyc文件。

2 个答案:

答案 0 :(得分:4)

如果您使用Python 3.2+,这些文件将放在a __pycache__ directory

在早期版本中,我认为没有办法改变Python的行为(虽然PEP确实说功能may be backported to 2.7 - 这没有发生) - 但你可能能够配置你的文件管理器隐藏.pyc个文件。

除此之外,您可以使用bash脚本或类似的东西清除这些文件,因为每次运行程序时都可以生成它们。

一般来说,我建议只留下它们。

答案 1 :(得分:1)

我仍然不是100%肯定为什么你想要这样做,但一种方法是压缩所有* .pyc文件,然后使用zipimport自Py2.3以来一直存在的机制。

摘自页面底部的示例:

$ unzip -l /tmp/example.zip
Archive:  /tmp/example.zip
  Length     Date   Time    Name
 --------    ----   ----    ----
     8467  11-26-02 22:30   jwzthreading.py
 --------                   -------
     8467                   1 file
$ ./python
Python 2.3 (#1, Aug 1 2003, 19:54:32)
>>> import sys
>>> sys.path.insert(0, '/tmp/example.zip')  # Add .zip file to front of path
>>> import jwzthreading
>>> jwzthreading.__file__
'/tmp/example.zip/jwzthreading.py'