Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python导入模块不返回提示符_Python_Python 3.x - Fatal编程技术网

python导入模块不返回提示符

python导入模块不返回提示符,python,python-3.x,Python,Python 3.x,我编写了一个在从命令行执行或作为模块导入时表现不同的模块,例如: if __name__ == "__main__": print("Aloha Main") else: print("Aloha Module") 但是,当我在python3交互会话中导入此模块时,我没有得到返回提示,我必须按额外的“Enter”键才能返回提示。调用此模块中的函数时也是如此。当我在“else:”之后注释掉“print”语句时,问题就消失了。即使“打印”已就位,也可以返回提示吗 更新:下面是一个t

我编写了一个在从命令行执行或作为模块导入时表现不同的模块,例如:

if __name__ == "__main__":
    print("Aloha Main")
else:
    print("Aloha Module")
但是,当我在python3交互会话中导入此模块时,我没有得到返回提示,我必须按额外的“Enter”键才能返回提示。调用此模块中的函数时也是如此。当我在“else:”之后注释掉“print”语句时,问题就消失了。即使“打印”已就位,也可以返回提示吗

更新:下面是一个test.py,它演示了这种行为

if __name__ == "__main__":
    print("Aloha Main")
else:
    print("Aloha Module") 
我得到:

% python3
Python 3.6.0 (default, Dec 23 2016, 12:51:31) 
[GCC 4.2.1 Compatible Apple LLVM 7.3.0 (clang-703.0.31)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import test
>>> Aloha Module

>>> 
我不得不按enter键返回到“Aloha模块”后的提示。这是在OSX上运行Python3.6。在同一系统上,Python2.7没有问题


更新2:这在OSX 10.11.6中是一个特别的问题,我在我的Linux机器上进行了测试,并在python 3.6下得到了提示。我使用OSX内置终端。

您在发布的代码中看到这种行为了吗?如果没有,您的代码是否有可能试图从stdin读取?我怀疑您收到了提示,但它被您的打印混合或覆盖了。刚刚在交互式会话(Python 3.5,Ubuntu)中测试了准确的代码(保存在名为
testprint.py
)的模块中,
导入testprint
打印得很好,我得到了一个正常的提示,无需再次点击回车键。您没有提供足够的信息来复制…这是空闲还是什么?有趣的是,您将提示打印在与文本相同的行上:
>Aloha Module
。因此,看起来这只是终端将打印的输出和REPL的输出混合在一起的一种方式。你对发布的代码有这种行为吗?如果没有,您的代码是否有可能试图从stdin读取?我怀疑您收到了提示,但它被您的打印混合或覆盖了。刚刚在交互式会话(Python 3.5,Ubuntu)中测试了准确的代码(保存在名为
testprint.py
)的模块中,
导入testprint
打印得很好,我得到了一个正常的提示,无需再次点击回车键。您没有提供足够的信息来复制…这是空闲还是什么?有趣的是,您将提示打印在与文本相同的行上:
>Aloha Module
。因此,它看起来就像是终端混合了
print
的输出和REPL的输出。