簡體   English   中英

PyCharm print end='\\r' 語句不起作用

[英]PyCharm print end='\r' statement not working

已經有很多關於打印語句的其他問題,但我還沒有找到我的問題的答案:

當我做:

for idx in range(10):
    print(idx, end="\r")

直接在(ipython)終端中,它工作正常並且總是覆蓋上一行。 但是,當在帶有 PyCharm 的模塊中運行它時,我沒有看到標准輸出中打印出任何行。

這是一個已知的 PyCharm 問題嗎?

嘗試在打印字符串的開頭(而不是結尾)添加\\r

    for idx in range(10):
        print('\r', idx, end='')

前面回車,並以 '' 結尾以避免換行 '\\n'。 避免空格的一種解決方案是使用格式約定:

    for idx in range(10):
        print("'\r{0}".format(idx), end='')

我遇到過同樣的問題。 雖然我沒有找到使用 print() 的解決方案,但我發現 sys.stdout.write 工作正常。 (Win10,Python 3.5.1,Pycharm 2016.3.2)

import sys
import time

def countdown(n):
    for x in reversed(range(n)):
        sys.stdout.write('\r' + str(x))
        time.sleep(1)

countdown(60)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM