为什么
答案是
print('helloo\b')
的结果不是hello
,同时print('heeee\b\b\blo')
的结果也不是hello
?答案是
helloo
和heloe
。print('helloo\b')
的结果不是hello
,同时print('heeee\b\b\blo')
的结果也不是hello
?helloo
和heloe
。为什么print('helloo\b')的结果不是'hello'
因为\b
并不会删除字符,它只是将光标向后移动一个位置。由于\b
后面没有任何内容,因此没有任何字符被覆盖。最终输出的结果类似于:
hello
^
其中 ^
代表光标。
而且执行 print('heeee\b\b\blo') 的结果不是 'hello'。正确答案是 'helloo' 和 'heloe'
因为在这个例子中,你将光标向后移了 3 个位置,并且在第二个和第三个 e
上写入了 lo
:
heeee
^
Becomes:
heloe
\b
字符。也可以参见“backspace”转义字符‘\b’:意外行为?。
"hello!\b?" != "hello?"
,\b
在print
期间具有影响,但不会影响字符串的内容。 - norok2