【问题标题】:Why does the PyChram IDE console not display a returned value unless print() is used?为什么 PyCharm IDE 控制台不显示返回值,除非使用 print()?
【发布时间】:2018-09-10 23:53:42
【问题描述】:

我是 Python 和 JetBrains IDE 的新手。我最近安装了 PyCharm 和 Python 3.6.5。我的代码会运行,但除非我使用 print() 函数,否则不会显示代码的结果:

a = 1
a
print(a)

这只会显示为“1”一次。相反,在终端中,两次。这应该发生吗?如果没有,我该如何解决?

对比

【问题讨论】:

  • 如果你不打电话给print(),为什么你会期望打印出来的东西?
  • 我一直在使用终端学习,返回值显示在那里。正如我所问..“这应该发生吗?”还是不在 PyCharm 中?
  • “终端”是指交互式 Python 会话吗?在交互式会话中,每个表达式的 repr 在计算时都会打印出来(除非它计算为 None,这很令人困惑)。那只是在交互式会话中,而不是在真正的程序中。所以:不,运行你的程序不应该导致中间表达式被打印到控制台。
  • 我愿意。太棒了,谢谢。

标签: python ide pycharm jetbrains-ide


【解决方案1】:

作为来自 cmets 的答案添加:

在与 Python 提示符(通常为 >>>)的交互会话中,每次计算表达式时,该表达式的 repr() 都会打印到控制台。

例如:

>>> 1 + 2
3
>>>

但是,该行为仅在交互式会话中。当您实际执行 Python 脚本时,控制台不会打印任何内容,除非您使用 print() 或其他一些 I/O 机制。

例如,如果你运行这个脚本:

#!/usr/bin/env python
1 + 2

然后什么都没有打印出来。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-08
    • 1970-01-01
    • 2017-07-26
    相关资源
    最近更新 更多