Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 安装我自己的软件包会生成一个;ModuleNotFoundError:没有名为'&书信电报;我的套餐>';通过pypi安装时 上下文_Python 3.x_Setup.py_Pypi - Fatal编程技术网

Python 3.x 安装我自己的软件包会生成一个;ModuleNotFoundError:没有名为'&书信电报;我的套餐>';通过pypi安装时 上下文

Python 3.x 安装我自己的软件包会生成一个;ModuleNotFoundError:没有名为'&书信电报;我的套餐>';通过pypi安装时 上下文,python-3.x,setup.py,pypi,Python 3.x,Setup.py,Pypi,我正在创建我的第一个名为countries\u utils的软件包,该软件包于上提供 我已经阅读了以下教程: 打包Python项目 管理应用程序依赖项 包装和分发项目 图书馆的代码国家/地区\u utils 该库的源代码可在bitbucket上获得: 问题 我运行命令pip install countries utils 我下载了图书馆的最新版本 我运行python命令 我使用import countries\u utils 我得到错误:ModuleNotFoundError:没有名为“

我正在创建我的第一个名为
countries\u utils
的软件包,该软件包于上提供

我已经阅读了以下教程:

  • 打包Python项目
  • 管理应用程序依赖项
  • 包装和分发项目
  • 图书馆的代码
    国家/地区\u utils
    该库的源代码可在bitbucket上获得:

    问题
  • 我运行命令
    pip install countries utils
  • 我下载了图书馆的最新版本
  • 我运行
    python
    命令
  • 我使用
    import countries\u utils
  • 我得到错误:
    ModuleNotFoundError:没有名为“countries\u utils”的模块
  • 问题:我缺少什么?

    pip list
    命令的结果 错误 这是在python控制台中执行导入国家/地区的
    操作的结果:

    > python
    
    Python 3.7.4 (default, Aug  9 2019, 18:34:13) [MSC v.1915 64 bit (AMD64)] :: Anaconda, Inc. on win32
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import countries_utils
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    ModuleNotFoundError: No module named 'countries_utils'
    
    
    我想是这样的:

    packages=setuptools.find_packages(),
    ...
    package_dir={'': 'countries_utils'},  # Optional
    
    来自Python(我的重点):

    如果要将模块放在目录中,而不是以其包命名的目录, 然后您需要再次使用
    package\u dir
    选项。例如,如果
    src
    目录包含
    foobar
    包中的模块:

    <root>/
            setup.py
            src/
                     __init__.py
                     foo.py
                     bar.py
    
    在您的情况下,包名是
    countries\u utils
    ,并且您已经有了一个适当命名的包目录
    countries\u utils
    。因此不需要
    package\u dir
    选项。它仅在要安装的软件包位于不同名称的文件夹中时使用。

    我认为是这样的:

    packages=setuptools.find_packages(),
    ...
    package_dir={'': 'countries_utils'},  # Optional
    
    来自Python(我的重点):

    如果要将模块放在目录中,而不是以其包命名的目录, 然后您需要再次使用
    package\u dir
    选项。例如,如果
    src
    目录包含
    foobar
    包中的模块:

    <root>/
            setup.py
            src/
                     __init__.py
                     foo.py
                     bar.py
    

    在您的情况下,包名是
    countries\u utils
    ,并且您已经有了一个适当命名的包目录
    countries\u utils
    。因此不需要
    package\u dir
    选项。它仅在要安装的软件包位于不同名称的文件夹中时使用。

    您需要在此处发布您的
    setup.py
    ,而不是指向外部回购的链接,以便查看此问题的人可以看到相同的代码集来重现问题。Bitbucket中的代码(尤其是到主分支的链接)可能会随着时间的推移而更改或消失。从PyPi(
    pip安装国家/地区\u utils
    )安装包后,快速检查显示没有
    countries\u utils
    文件夹添加到
    站点包
    目录,因此。。可能会出现错误。亲爱的@gino mempin创建文件夹网站包缺少什么?您需要在此处发布您的
    setup.py
    ,而不是指向外部回购的链接,以便查看此问题的人会看到相同的代码集来重现问题。Bitbucket中的代码(尤其是到主分支的链接)可能会随着时间的推移而更改或消失。从PyPi(
    pip安装国家/地区\u utils
    )安装包后,快速检查显示没有
    countries\u utils
    文件夹添加到
    站点包
    目录,因此。。预期会出现错误。亲爱的@gino mempin创建文件夹网站包缺少什么?我根据您的反馈和Distutils示例链接成功地使其工作。我根据您的反馈和Distutils示例链接成功地使其工作