Python清晰行奇怪的注释字符
我一直在尝试创建清除前一行的文本,然后用不同的文本打印出新的文本。我找到了一个函数,但它没有清除最后一行,而是打印出一个新的,但带有一个奇怪的半音符符号Python清晰行奇怪的注释字符,python,python-3.x,Python,Python 3.x,我一直在尝试创建清除前一行的文本,然后用不同的文本打印出新的文本。我找到了一个函数,但它没有清除最后一行,而是打印出一个新的,但带有一个奇怪的半音符符号 from time import sleep for x in range(10): print ('{0}\r'.format(x)), sleep(0.5) 它返回以下内容: 0 1 2 3 4 5 6 7 8 9 但每个数字旁边都有一个半音符。(我无法在HTML上显示它) 如果有帮助的话,我将在RPI3的Raspbia
from time import sleep
for x in range(10):
print ('{0}\r'.format(x)),
sleep(0.5)
它返回以下内容:
0
1
2
3
4
5
6
7
8
9
但每个数字旁边都有一个半音符。(我无法在HTML上显示它)
如果有帮助的话,我将在RPI3的Raspbian Stretch上使用Python 3.5
编辑:我做了更多的调查,发现问题与Unicode有关。并非所有控制台都使用回车(
\r
)返回到当前行的开头。使用退格字符(\b
)可能会更幸运。另外,print()
将自动添加新行。将end=“”
添加到它的参数中(即print({0}\r'.format(x),end=“”)
),以避免这种情况发生。@zwer或者更简单地说,print(x,end='\r')
类似的问题:刚刚在python 3.5.2中测试过-不起作用。你需要删除打印后的逗号是的,这是一个打字错误。删除它这个问题指定了python-3.x,所以这个答案是完全正确的,但是对于未来的观众来说-在python-2.x中,print仍然是一个语句,所以它没有参数行end
,所以您需要使用from\uuuuuuuuu future\uuuuuuuu导入print\u函数
或在中结束print语句,
以防止添加换行符。它仍然会创建相同的错误,只是没有任何新行
from time import sleep
for x in range(10):
print (x,end='\r')
sleep(0.5)