[英]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.