已编辑(澄清问题):
我有一个包含许多.py文件的包的python 2.4脚本。 .Pyc文件是自动创建的。
我可以从许多.pyc文件中只制作一个.pyc文件吗?
客户不应该获取.py文件。在最好的情况下,他应该只获得一个.pyc文件。
答案 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'