为什么我不能导入使用 setuptools 创建的包?
Why cant I import my package created using setuptools?
我正在开发一个项目 (CN_Analysis),我想使用安装工具为其创建自己的 python 程序包 (cn_tools)。我的目标是在我的项目文件夹中的任何地方都可以访问它。但是,当我尝试从子文件夹(例如 CN_Analysis/Notebooks)导入它时,我得到
(.virtualenvironment) ...:~/Workspace/CN_Analysis/Notebooks$ python3
import cn_tools
ModuleNotFoundError: No module named 'cn_tools'
目录结构如下:
CN_Analysis
├──README.md\
├──requirements.txt\
├──.gitignore\
├──setup.py\
├──.virtualenvironment/\
├──Notebooks/\
├──Data/\
├──cn_tools/\
| ├──__init__.py\
| ├──my_tools.py
setup.py的内容是:
from setuptools import setup, find_packages
setup(name = 'cn_tools',
version = '0.1',
description = 'This package contains helpful functions for the processing data obtained from Karambola.',
packages=find_packages(where='cn_tools'),
package_dir={'': 'cn_tools'})
附加信息:
基本套路是
source .virtualenvironment/bin/activate
(.virtualenvironment) python3 setup.py develop
结果
Installed /home/ansgar/Workspace/CN_Analysis/cn_tools\
Processing dependencies for cn-tools==0.1\
Finished processing dependencies for cn-tools==0.1
检查 python3
(.virtualenvironment) which python3
/home/my_name/Workspace/CN_Analysis/.virtualenvironment/bin/python3
如果我在导航到子文件夹(例如 Notebooks/)后从 python 调用 sys.path,它 returns
['',
'/usr/lib/python38.zip',
'/usr/lib/python3.8',
'/usr/lib/python3.8/lib-dynload',
'/home/my_name/Workspace/CN_Analysis/.virtualenvironment/lib/python3.8/site-packages',
'/home/my_name/Workspace/CN_Analysis/cn_tools']
有人知道为什么我无法导入 cn_tools 吗?
只要我用就可以了
包=find_packages()
而不是
包=find_packages(其中='cn_tools')
在 setup.py 文件中。
我正在开发一个项目 (CN_Analysis),我想使用安装工具为其创建自己的 python 程序包 (cn_tools)。我的目标是在我的项目文件夹中的任何地方都可以访问它。但是,当我尝试从子文件夹(例如 CN_Analysis/Notebooks)导入它时,我得到
(.virtualenvironment) ...:~/Workspace/CN_Analysis/Notebooks$ python3
import cn_tools
ModuleNotFoundError: No module named 'cn_tools'
目录结构如下:
CN_Analysis
├──README.md\
├──requirements.txt\
├──.gitignore\
├──setup.py\
├──.virtualenvironment/\
├──Notebooks/\
├──Data/\
├──cn_tools/\
| ├──__init__.py\
| ├──my_tools.py
setup.py的内容是:
from setuptools import setup, find_packages
setup(name = 'cn_tools',
version = '0.1',
description = 'This package contains helpful functions for the processing data obtained from Karambola.',
packages=find_packages(where='cn_tools'),
package_dir={'': 'cn_tools'})
附加信息:
基本套路是
source .virtualenvironment/bin/activate
(.virtualenvironment) python3 setup.py develop
结果
Installed /home/ansgar/Workspace/CN_Analysis/cn_tools\
Processing dependencies for cn-tools==0.1\
Finished processing dependencies for cn-tools==0.1
检查 python3
(.virtualenvironment) which python3
/home/my_name/Workspace/CN_Analysis/.virtualenvironment/bin/python3
如果我在导航到子文件夹(例如 Notebooks/)后从 python 调用 sys.path,它 returns
['',
'/usr/lib/python38.zip',
'/usr/lib/python3.8',
'/usr/lib/python3.8/lib-dynload',
'/home/my_name/Workspace/CN_Analysis/.virtualenvironment/lib/python3.8/site-packages',
'/home/my_name/Workspace/CN_Analysis/cn_tools']
有人知道为什么我无法导入 cn_tools 吗?
只要我用就可以了
包=find_packages()
而不是
包=find_packages(其中='cn_tools')
在 setup.py 文件中。