PyCharm:在Python控制台中执行

PyCharm:在Python控制台中执行

问题描述:

我正在PyCharm中处理Python项目。对于一个文件,我想使用Python控制台测试部分代码。问题是,该代码包含这样的主方法(用于调试和执行):PyCharm:在Python控制台中执行

if __name__ == "__main__": 
    print("with main") 
else: 
    print("no main") 

当我执行在Python控制台的代码(使用PyCharm的上下文菜单),那么如果意愿的第一部分被执行。因为我没有使用运行配置启动脚本,所以我期待其他部分。

也许你可以帮助我如何做到这一点。

+0

但是,这正是你想要在Python控制台中运行,对不对?它的行为完全像程序。你为什么不喜欢它? – mrCarnivore

+0

是的,没有。如果我从shell或通过PyCharm的运行配置启动脚本,那么我将添加一些参数,然后在if部分中进行提取和处理。但是如果我想在控制台中测试脚本,那么我无法指定命令行参数。这就是为什么我会将默认值添加到else部分。 – Matthias

+0

好点......我从来没有这个问题。如果它的工作,这将是一个很好的解决方案... – mrCarnivore

创建像not_main_start.py这样的文件只有一行import main.py(我想这是你的主文件)。运行然后这个文件。输出应显示no main。仅当您直接调用此文件时,__name__将被命名为__main__。如果您将它用作模块,那么它将具有模块的名称。

+0

有趣的想法。但最后你想要解析主文件中的命令行参数,然后调用其他文件的方法。所以你的导入是相反的。 – Matthias