了解Python软件包并导入文件

时间:2019-09-29 05:15:59

标签: python import module importerror python-packaging

我正在启动一个项目,该项目分为多个包和文件。我很快遇到的问题是,当从命令行运行时,从PyCharm内部运行时无法正常运行的导入。 这是我的当前目录

Current Directory

文件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运行的目录更改似乎没有什么作用。

我确定我不理解为什么会这样的根本问题。我真的很想了解,所以当这个项目变得更加复杂和深入时,我可以像这样解决导入问题。感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

您遇到的问题与在PyCharm中运行脚本的方式有关-为每个运行配置指定工作目录。

从命令行运行脚本时,只要您将其cd到相同的工作目录,该行为就应该相同。

如果不确定是哪一个,可以检查配置或控制台输出。

也许还应该阅读以下问题的答案:Import statement works on PyCharm but not from terminal

相关问题