我正在启动一个项目,该项目分为多个包和文件。我很快遇到的问题是,当从命令行运行时,从PyCharm内部运行时无法正常运行的导入。 这是我的当前目录
文件C的内容:
print("File C imported")
文件B的内容:
print("File B imported")
class ClassB:
def __init__(self):
print("Class B made")
文件A的内容:
import src.packageB.fileB as B
import packageC.fileC
B.ClassB()
print("packageA ran")
当我按下PyCharm中的播放按钮时,所有不同的模块都会导入并打印:
File B imported
File C imported
Class B made
packageA ran
从命令行运行fileA时,引发错误,提示“ No module name src”。我试过从“ PackageTest”,“ src”和“ packageA”运行fileA.py,但是从python运行的目录更改似乎没有什么作用。
我确定我不理解为什么会这样的根本问题。我真的很想了解,所以当这个项目变得更加复杂和深入时,我可以像这样解决导入问题。感谢您的帮助!
答案 0 :(得分:0)
您遇到的问题与在PyCharm中运行脚本的方式有关-为每个运行配置指定工作目录。
从命令行运行脚本时,只要您将其cd到相同的工作目录,该行为就应该相同。
如果不确定是哪一个,可以检查配置或控制台输出。
也许还应该阅读以下问题的答案:Import statement works on PyCharm but not from terminal