__pycache__ 是跨平台的吗?
Is __pycache__ crossplatform?
我有一个文件夹 /foo
。此文件夹作为 package_data 包含在我的 Python 包的 setup.py
中。当某人 pip install
是我的包裹时,他们可以将 /foo
下载到他们的计算机上。
我注意到,当发生这种情况时,/foo
中的所有 *.py
文件都包含一个 __pycache__
文件夹。我不确定这是在我的轮子创建时创建的,还是在安装时创建的。我假设它是在创建轮子的过程中。
因为我的包应该可以在 windows/osx/linux 上运行,所以会因为 __pycache__
文件夹而中断吗?它是特定于平台的,还是可以跨平台工作?或者该文件夹是否在 wheel 安装期间创建,无论如何都没有关系。
__pycache__
通常在安装包时即时生成,除非您不小心将它包含在您的项目中(在这种情况下最好将其删除)。有关完整规范,请参阅 PEP3147。
编译后的代码设计为故障安全。也就是说,如果它存在但未针对您的 OS/architecture 编译,则应忽略它。
我有一个文件夹 /foo
。此文件夹作为 package_data 包含在我的 Python 包的 setup.py
中。当某人 pip install
是我的包裹时,他们可以将 /foo
下载到他们的计算机上。
我注意到,当发生这种情况时,/foo
中的所有 *.py
文件都包含一个 __pycache__
文件夹。我不确定这是在我的轮子创建时创建的,还是在安装时创建的。我假设它是在创建轮子的过程中。
因为我的包应该可以在 windows/osx/linux 上运行,所以会因为 __pycache__
文件夹而中断吗?它是特定于平台的,还是可以跨平台工作?或者该文件夹是否在 wheel 安装期间创建,无论如何都没有关系。
__pycache__
通常在安装包时即时生成,除非您不小心将它包含在您的项目中(在这种情况下最好将其删除)。有关完整规范,请参阅 PEP3147。
编译后的代码设计为故障安全。也就是说,如果它存在但未针对您的 OS/architecture 编译,则应忽略它。