我想要在一行上打印三个点(形成省略号),但是print()会打印空白。
print("one moment...")
one moment...
print("...")
print("..")
..
print("...abc...")
abc...
print("\u2026")
…
这里发生了什么?为什么"..."被异常地解析了?
我正在PyCharm中使用ipython。
我想要在一行上打印三个点(形成省略号),但是print()会打印空白。
print("one moment...")
one moment...
print("...")
print("..")
..
print("...abc...")
abc...
print("\u2026")
…
这里发生了什么?为什么"..."被异常地解析了?
我正在PyCharm中使用ipython。
看起来这是Pycharm已知的问题,即其交互式控制台会删除print语句中前面的三个点号。 这里是跟踪此问题的工单。
现在可以尝试定义类似以下内容的代码作为解决方法:
def iprint(obj):
if (s:=str(obj)).startswith("..."):
print(" "+s)
else:
print(s)
看起来像这样:
>>> iprint("...ymmv")
...ymmv
str(x).startswith(“…”)
,如果为真,则添加换行符或其他内容。 - 0x263Afunctools.partialmethod()
的结果是否可调用,而且已经六年了。 - Aaron F
…
会变成…
,在7位ASCII中则可能为空。"…".encode('utf8').decode('ascii', errors='ignore') == ""
- TLWopt-;
,而在 Windows 上,它是alt-0133
,数字位于数字键盘上。 - Manngoprint('… watch this space …')
和print('... watch this space ...')
。两者都可以完美地打印。使用的是2021.3.1(社区版)。 - Manngo