2014-04-04 64 views
0

这里有一个新手问题:使用PYC文件而不是PY

我有一个PY代码并编译它以创建一个.pyc。我想用这个pyc文件而不是PY。

我正在使用外部程序运行PY文件。当PY存在于文件夹中时,一切都很完美。然而,当我删除PY文件,只需使用PYC我得到错误:

IOError: [Errno 2] No such file or directory: 'E:/data/test/tech.py' 

虽然我有一个tech.py​​c在同一folder.Any想法可能是这里的问题躺在附近?

+1

您是否尝试运行或导入它?无论如何,你是如何做到的? – aepsil0n

+0

@msvalkon我想你可以,看到http://stackoverflow.com/questions/9913193/is-it-possible-to-import-a-compiled-python-file – aepsil0n

+0

啊,我会重申。您*可以*导入'.pyc',但我无法理解可能带来的好处。它认为应该明确的是,与编译语言不同,在编译语言中,程序可以编译成可执行的二进制文件并“无需担心”地分发,python“.pyc”不能达到这个目的。 – msvalkon

回答

4

通常情况下,python不会被编译。 .pyc文件只是一个性能优化,可以缩短加载时间。

Python正在查找.py文件,因为它总是首先检查它。如果.pyc文件比其对应的.py文件新,则它将使用.pyc文件。如果.py文件较新,它将创建一个新的.pyc文件。