python - 在同一目录中导入模块

标签 python

考虑以下目录结构:

lib/
  markov.py
  solver.py
  test.py

markov.py有以下代码:super() throwing an error in Sublime Text, works in PyCharm/Terminal

solver.py仅包含一堆数学函数,这是一个示例:

def mm1_busy_idle(arrival, service):
    return round(1 - (arrival / service), 4)

现在,当我尝试做 import solver 时在markov.py ,PyCharm 告诉我有 No module named solver 。然而,当我这样做时import test它做得很好,我可以从那里运行测试功能:

def test():
    print("test!")

此外,当我将鼠标悬停在 test.test() 上时PyCharm 向我显示以下工具提示:Cannot find reference 'test' in '__init__.py' .

我的问题是:为什么我可以import test并运行函数test()但我不能import solvermarkov.py

最佳答案

在lib中添加一个文件(__init__.py空文件),

lib/
  __init__.py
  markov.py
  solver.py
  test.py

最终解决方案:

import sys
sys.path.append("/path/to/lib")

关于python - 在同一目录中导入模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42823005/

相关文章:

python - 我正在尝试准确了解如何使用 cmd 模块

python - 为什么我的 Trackbar 的值总是 -1

python - MATPLOTLIB X-AXIS AND Y-AXIS 刻度背景和字体颜色

python - 计算 nd 数组中相同子数组的最快方法?

python - 类型错误 : '>' not supported between instances of 'list' and 'int'

python - 如何处理 CNN 训练 Keras 的数千张图像

python - 如何在Python中计算两个二维数组之间的互元素?

python - 如何获取 QTreeWidget 可见区域中显示的所有项目?

python - 这段代码在做什么?

Python 在 lambda 中尝试 Catch block