【问题标题】:Import Python module (from another path) and use as default导入 Python 模块(从另一个路径)并用作默认值
【发布时间】:2015-02-12 07:39:42
【问题描述】:

我想导入位于另一条路径的请求模块。 我想使用下面的代码。我还可以看到安装模块的请求目录有一堆其他文件。这有什么用。

>>> r = requests.get('https://api.github.com/user', auth=('user', 'pass'))
>>> r.status_code
200

以下是 /Requests 目录的一些内容。

adapters.py
adapters.pyc
api.py
__init__.py

......

下面的问题有一些很好的答案,但仍然让我感到困惑。

How to import a module given the full path?

【问题讨论】:

    标签: python python-import python-importlib


    【解决方案1】:

    不,您不必包含 .py 文件。 Python 解释器查看为 init.py 文件提到的路径。如果它在那里,代码应该可以正常工作。虽然对于 Python 3 init.py 文件也不是必需的。

    正如我在您的 init.py 文件的目录列表中看到的那样。另请注意 init.pyc 文件在那里,它只是上面的缓存版本。

    查看解释器在下面引用的所有路径

    import sys
    sys.path 
    

    你在这里使用的是

    sys.path.append('/.../requests/')
    

    不要在请求后使用额外的“/”,这意味着它正在请求文件夹中寻找请求目录并给你错误 No module named requests。

    【讨论】:

      【解决方案2】:

      不简单

      import sys
      sys.path.append('path\\to\\request_module')
      

      解决您的问题?

      【讨论】:

      • 我在执行导入请求时收到以下错误,import sys, sys.path.append('/.../requests/') 我还需要明确提及 .py 文件吗ImportError: No module named requests
      猜你喜欢
      • 2019-04-09
      • 2021-01-09
      • 2014-04-30
      • 2020-05-18
      • 1970-01-01
      • 2018-04-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多