Python 为什么我的导入可以在pycharm中工作,但不能在命令行中工作?

Python 为什么我的导入可以在pycharm中工作,但不能在命令行中工作?,python,command-line,pycharm,Python,Command Line,Pycharm,我有以下文件夹布局: my_folder/ my_subfolder/ __init__.py main.py import_1.py import_2.py 使用文件: # main.py from my_subfolder import import_1 import_1.call_import_2(3) 及 及 现在的问题是,如果我在pycharm中运行main.py,它工作得很好。但是,如果我从命令行py

我有以下文件夹布局:

my_folder/
    my_subfolder/
        __init__.py
        main.py
        import_1.py
        import_2.py
使用文件:

 # main.py
 from my_subfolder import import_1

 import_1.call_import_2(3)

现在的问题是,如果我在pycharm中运行
main.py
,它工作得很好。但是,如果我从命令行
python my_子文件夹/main.py
python main.py
(取决于我所在的文件夹)运行它,它将无法工作!git bash也无法让它工作。我得到一个错误:

ModuleNotFoundError no module named 'my_subfolder'
有人知道是什么导致pycharm和命令行之间出现这种差异吗

 # main.py
 from . import import_1

 import_1.call_import_2(3)

您已经在my_子文件夹中,因此它会在其中查找另一个文件夹


您已经在
my_子文件夹中,因此它会在其中查找另一个。

请尝试
from.my_子文件夹导入导入1
@tendousb不工作
modulenofounderror:没有名为“\u main\u.my_package”的模块__main_uuuu不是一个包
try
from.my_u子文件夹import\u 1
@坚韧B不工作
modulenofoundError:没有名为“uuuu main_uuuuu.my_upackage”的模块__main\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu,你能给我解释一下吗?这对我不起作用。导入恐怖:不能从“\uu main\uuuuuu”导入名称“second\u import”
如果你像模块一样运行你的脚本
python-m
,那么你需要一个
\uu main\uuuuuuuuuy.py
@坚韧b我真的不知道你的确切意思是什么:),你能给我解释一下吗?
ModuleNotFoundError no module named 'my_subfolder'
 # main.py
 from . import import_1

 import_1.call_import_2(3)
 # import_1.py
 from . import import_2

 def call_import_2(n):
     import_2.print_hello_world_n_times(n)