簡體   English   中英

運行 setup.py 時更改包名

[英]Change package name when running setup.py

我已經分叉了一個 repo,現在我已經克隆了它。 當在里面運行 setup.py 文件時,Python 會在 site-packages 中安裝包作為一個不起眼的名字,在 Python 文件中導入它是不可行的。

例如,我分叉並克隆了一個名為foo 我也可以在 setup.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 (通過 setup.py 運行/安裝時),以便我可以運行import foo而不是import foo-3.3...

我覺得我不能只是重命名它,好像我希望其他用戶克隆 repo 而不必像我一樣經歷同樣的麻煩。 包名是否嵌入在 setup.py 文件夾中的某處?

如果您需要其他任何東西,請告訴我,我願意解決這個問題。

您不必導入foo-3.3 實際上你不能導入,因為它是SyntaxError

您不必從foo-3.3.0rc6-py3.6.egg導入foo-3.3 ,因為 distutils/setuptools 為雞蛋配置了正確的導入路徑。 查看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

...它會做正確的事情。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM