对我来说是个奇怪的问题。我在pycharm中开发了一个程序,效果很好。如果我打算在终端或一般在pycharm之外启动该程序,则会发生很多ModuleNotFoundErrors。为什么pycharm中的导入是正确的,但在导入之外是错误的?
我试图更改进口。例如,我将“ from core.bot import Bot”更改为“ from bot import Bot”。现在它可以在终端中运行,但是在pycharm中,代码行用红色下划线标出。
一些导入示例:
'''
from core.bot import Bot
'''
'''
from talib._ta_lib import BBANDS, SMA, MACD
from binance.BinanceKeys import BinanceKey1
from binance.client import Client
'''
答案 0 :(得分:1)
为避免此类问题,应在Pycharm中标记目录,从该目录将在您的“源根目录”中调用主脚本。
为此,请右键单击Pycharm树文件夹结构(“项目”选项卡)上的文件夹,然后选择Mark Directory as -> Sources Root
。该文件夹将变为蓝色。现在,所有导入路径都从此Root文件夹开始。
从评论中的讨论中可以看出,更改导入行的事实如何导致Pycharm或终端机中的导入崩溃,您的问题出在哪个文件夹被视为根目录上。通过使用我解释的设置,可以避免此类问题。