我正在编写一个Python包,这是我的文件结构。 simple_eda是主文件夹,我在其中包含 init 文件和代码文件。在我的代码文件中,我有Class SimpleEDA类,可以完成所有工作。导入我要使用的
import SimpleEDA or from simple_eda import SimpleEDA
我的初始化文件为空。
simple_eda
。初始化 .py
.simple_eda.py
测试
setup.py
README.md
许可
我已经使用此命令为我的simple_eda构建了whl。我已经在setup.py文件所在的主目录中使用了此命令。
python3 setup.py sdist bdist_wheel
这已在dist文件夹中成功创建了whl文件和tar.gz文件。所以我用
pip安装simple_eda.whl
,然后安装软件包。所以我在终端中编写python来激活Python。我可以导入我的包裹用户
from simple_eda.simple_eda import SimpleEDA
但是如果我尝试在Jupyter笔记本中执行此操作,则会给我错误。
from simple_eda.simple_eda import SimpleEDA
这是我的setup.py文件代码。
import setuptools
with open("README.md", "r") as fh:
long_description = fh.read()
setuptools.setup(
name="simple_eda",
version="0.0.1",
author="Muhammad Shahid Sharif",
author_email="chshahidhamdam@gmail.com",
description="A wrapper around Pandas to perform Simple EDA with less code.",
long_description=long_description,
long_description_content_type="text/markdown",
url="my git link here",
packages=['simple_eda'],
install_requires = ['matplotlib==3.0.3','nltk==3.4.5',
'numpy==1.17.2',
'numpydoc==0.9.1',
'pandas==0.25.1',
'scikit-image==0.15.0',
'scikit-learn==0.22.2.post1',
'scipy==1.4.1',
'seaborn==0.9.0',
'spacy==2.2.3',
'spacy-langdetect==0.1.2',
'spacy-readability==1.3.0',
'textblob==0.15.3'],
classifiers=[
"Programming Language :: Python :: 3",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
],
python_requires='>=3.5',
)
我想像这样导入我的包
import SimpleEDA or from simple_eda import SimpleEDA
答案 0 :(得分:1)
由于您处于Conda环境中,因此您似乎尚未在该环境中安装Jupyter。相反,您正在运行的jupyter
可执行文件可能是全局安装的,而您自己开发的软件包是使用pip
在本地安装的(在Conda环境中)。请注意两个可执行文件的不同路径:
/snap/bin/jupyter
$HOME/anaconda3/envs/eda_test_2/bin/python3
因此,只需通过以下方式为您的Conda环境安装Jupyter:
conda install jupyter
或
pip install jupyter
旁注:由于您处于Conda环境中,因此应该能够简单地使用python
而不是python3
。一个只是别名。如果您使用python
仍为Python 2的操作系统,则此操作可能无法在您的环境之外进行。
答案 1 :(得分:0)
问题似乎是OP具有多个conda环境,并且该软件包安装在一个python环境中,但是jupyter notebook无法访问该环境。
要在具有多个conda环境的jupyter笔记本电脑上使用,建议的做法是在基本环境中安装nb_conda_kernels
,然后在应在jupyter中使用的每个环境中安装ipykernel
(或其他语言内核)笔记本。
conda install -n base nb_conda_kernels
conda install -n MYENV ipykernel
jupyter-notebook # Run this from the base environment
然后,导航到jupyter笔记本,打开它,选择与要使用的conda环境相对应的内核,然后运行笔记本。
此外,要在特定的conda环境中安装自定义pip软件包,OP应该使用其命令明确显示。例如,使用python -m pip
而不是pip
包装器。
conda activate MYENV # or source activate MYENV
python -m pip install MYPACKAGE.whl
对于OP,他们应该在具有自定义软件包的任何环境中安装ipykernel
,然后在使用jupyter notebook时,他们应该使用该环境的内核。
相关:https://github.com/jupyter/help/issues/342#issuecomment-382837602