当前位置: 首页 > 知识库问答 >
问题:

PyCharm中IPython中的奇怪“打印”行为[重复]

童华池
2023-03-14

显示时,打印功能似乎可以减少点数:

Python 3.8.10 (default, Mar 15 2022, 12:22:08) 
Type 'copyright', 'credits' or 'license' for more information
IPython 7.22.0 -- An enhanced Interactive Python. Type '?' for help.
PyDev console: using IPython 7.22.0
Python 3.8.10 (default, Mar 15 2022, 12:22:08) 
[GCC 9.4.0] on linux

In [2]: s = "A\n..... a\n..... b\n"

In [3]: print(s)
A
.. a
.. b


In [4]: 

航站楼里不会发生这样的事情:

Python 3.8.10 (default, Mar 15 2022, 12:22:08) 
[GCC 9.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> s = "A\n..... a\n..... b\n"
>>> print(s)
A
..... a
..... b
>>> 

即使我在其中运行IPython:

$ ipython

Python 3.8.10 (default, Mar 15 2022, 12:22:08) 
Type 'copyright', 'credits' or 'license' for more information
IPython 7.22.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: s = "A\n..... a\n..... b\n"

In [2]: print(s)
A
..... a
..... b


In [3]: 

有人知道这种行为的原因吗?

共有1个答案

闾丘成礼
2023-03-14

我认为这与隐式行连接的iPython语法有关。PyCharm可能会将三个点转换为省略号,并将其解释为“新行命令”(就像在ipython控制台中,您在不关闭括号的情况下断开行并且它期望其他参数

 类似资料:
  • 为什么第一次计算的结果比第二次计算的结果大? 结果:

  • 我在http://www.nodebeginner.org上读了一篇教程,我在数据输出中有一个奇怪的行为。我知道,Stackoverflow也有类似的问题,但没有答案。所以我有这个Web-Server的代码: 调用RequestHandler.Upload的Router.js代码-我的buggy函数 和RequestHandler.Upload的代码 假设POST数据中有一个字符串。该函数的第一行

  • 但是,我犯了一个错误,写了这样一段话: 然后我写道: 没有打印任何输出,所以我的问题是,基本上,为什么?

  • 如果我理解正确转义序列将活动光标位置向左移动,并且在光标位置插入换行符。但是下面的例子令人困惑。 在第一个示例中,将光标向左移动五个位置(在>),然后插入 和 的使用以一种意想不到的方式改变了 的行为。原始字符串中的字符将被覆盖, 将插入末尾,而不是光标位置。有人能解释一下这种行为吗?(或者它取决于终端?我在两个不同的终端上尝试过。)

  • 我有以下代码片段: 如果我调用foo(null)为什么没有歧义?为什么程序调用foo(字符串x)而不是foo(对象x)?

  • 我正在编写一个DocumentFilter,它将输入JTextField的所有单词“top”替换为逻辑top符号。 使用此代码很好,但是它很烦人,因为用户必须重新键入他们的空间,他们可以这样做,并且文本继续在同一行上 当用户继续键入文本时,使用此代码并在空格中添加替换符会导致顶部符号和JTextField中的所有文本稍微向上推,然后转到下面并开始一行新的内容 有人能解释一下这种行为,并希望能提供一