在Pycharm里使用轉義字符\r和在IDLE里使用\r產生的結果是不一樣的。
例子如下:
print("你好!\r我是Python!")
輸出結果為:
我是Python!
前面的“你好!"不見了。
而在IDLE里輸入同樣的語句,輸出的結果則為:
你好!我是Python!
這個問題讓我一度糾結很久,在查閱資料之后得到如下解釋:
\n 和 \r 都是特殊控制符,這些都是來自於老式電傳打字機的功能。
\n 是newline開個新行。
\r 是Carriage return, 打印頭回到行首。如果沒有\n就直接\r 那么這行就會被覆蓋打印了。
現在各個操作系統處理上不太一樣,在不同的終端顯示上也不太相同。
在idle中是不能實現 \r的功能的。
意思就是說,一切以Pycharm里為准,IDLE里實現不了\r的功能。
而\r的功能就是讓光標回到行首,覆蓋之前的內容,所以就產生了“我是Python!"覆蓋了“你好!"的結果。