问题描述
我创建了一个python软件包,并使用以下命令将其上传到pipy:
python setup.py sdist bdist_wheel
twine upload dist/*
setup.py
是:
import setuptools
with open("README.md","r") as fh:
long_description = fh.read()
setuptools.setup(
name='pakk',version='0.3',scripts=['pakk.py'],author="**insert Author**",author_email="[email protected]",description="pakk",long_description=long_description,long_description_content_type="text/markdown",url="https://some_website.nice",packages=setuptools.find_packages(),classifiers=[
"Programming Language :: Python :: 3","License :: OSI Approved :: MIT License","Operating System :: OS Independent",],)
在Windows 10机器上一切正常,但是在其他地方却不能。 例如:
- 执行以下操作后,在google colab中
!pip install pakk
import pakk
我得到了错误:
Collecting pakk
Using cached https://files.pythonhosted.org/packages/aa/70/23a20ee172f26903ffc47b18e56c7274e078ecc4f5251e77f3f0/pakk-0.3-py3-none-any.whl
Installing collected packages: pakk
Successfully installed pakk-0.3
---------------------------------------------------------------------------
ModuleNotFoundError Traceback (most recent call last)
<ipython-input-111-7f093c9bb12b> in <module>()
1 get_ipython().system('pip install pakk')
2
----> 3 import pakk
ModuleNotFoundError: No module named 'pakk'
尽管在本示例中pip list
中甚至在缓存中都存在。
- 在repl.it上,该模块甚至没有安装,它冻结在
Package operations: 1 install,0 updates,0 removals
- Installing pakk(0.3)
可能是什么原因?以及我该如何解决? 在这两个网站中,我从未遇到过此类错误。另外,我不确定是否可以识别并安装依赖项,但是我可以随时手动编写它们。
解决方法
我从PyPI下载了发行版以进行检查。
没有find_packages()
可以找到的软件包。此外,py_modules
中没有setup.py
。因此,没有什么可导入的。
statsmodelier.py
模块被添加为scripts
,因此绝对不会将其添加为可导入模块。如果应该将其作为可导入模块,则应将其添加到py_modules
而不是scripts
。