2013-09-10 62 views
10

忽略文件中的“.pyc”和“.py [cod]”符号之间有什么区别(如果有的话)。我注意到我的git忽略文件都有。谢谢.gitignore符号中的“py [cod]”和“pyc”有什么区别?

+2

@CarlNorum:OP不会问这些扩展是什么意思,只要模式'.py [cod]'覆盖已经忽略'.pyc'。这是一个'git'问题,而不是Python的问题。 –

+2

它说“.pyc和.py [cod]文件之间有什么区别(如果有的话)”。 –

+0

这是含糊不清的。它似乎询问.py {c,o,d}文件扩展名之间的区别,但可能真的是关于gitignore模式的Git问题,因为这引发了这个问题。 –

回答

18

您可以安全地从.gitignore中删除.pyc条目,因为.py[cod]会覆盖它。方括号用于匹配任何一个字符,因此它匹配.pyc,.pyo.pyd

因为它们都是从.py源生成的,所以它们不应该存储在源代码管理中。

+2

.pyd文件是windows dll,不是由.py文件生成的。它们通常由C或C++源代码编译,应该被git忽略,就像生成的.exe被忽略一样。但是,如果有人决定将.pyd文件检入回购站,则需要从忽略文件中移除[d]。 – tdelaney

+0

所以.pyd文件是从C或C++生成的Python文件? – BluePython

+0

“.pyd”模块的源代码可以用任何语言编写,但.pyd文件本身是一个包含可执行代码的二进制文件。 –

相关问题