运行时更改包名称设置.py

2024-06-16 09:57:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我做了一个回购协议,现在我克隆了它。当运行设置.py文件内部,Python将包安装在站点包中作为一个模糊的名称,在Python文件中导入这个文件将不可行。在

例如,我派生并克隆了一个名为foo的repo。我也可以在设置.py文件:

setup(
    name='foo',
    version='3.3.0-rc6',
    packages=find_packages('src'),
    package_dir={'': 'src'},
    include_package_data=True,

当我运行python setup.py install时,我发现该包已安装为foo-3.3.0rc6-py3.6.egg。我不想把这个包作为这个名字导入到我的每个项目中。在

如何将包名称更改为foo(当通过运行/安装时)设置.py),这样我就可以运行import foo而不是{}?在

我觉得我不能只是重命名它,就好像我想让其他用户克隆回购,而不必像我一样经历同样的麻烦。包名是否嵌入到设置.py文件夹?在

如果你还需要什么,请告诉我,我愿意解决这个问题。在


Tags: 文件namepysrc名称协议packagefoo
2条回答

您不必导入foo-3.3;实际上,您不能导入它,因为它是SyntaxError。在

您不必从foo-3.3.0rc6-py3.6.egg导入foo-3.3,因为distutils/setuptools为eggs配置了正确的导入路径。查看easy-install.pth文件,您会发现./foo-3.3.0rc6-py3.6.egg。运行python并验证sys.path-必须有foo-3.3.0rc6-py3.6.egg条目,这样import foo才能正常工作。在

这只是鸡蛋的名字,你不用担心。Python知道在哪里查找包,所以当您执行

import foo

它会做正确的事情。在

相关问题 更多 >