Python2.7的打印代码是如何工作的?

Python2.7的打印代码是如何工作的?,python,printing,Python,Printing,我正在学习python,发现了一个有趣的例子。我运行这段代码,输出是“/”、“-”、“|”、“\”中的一个符号,并不断更改,我不明白它到底是如何工作的 while True: for i in ["/","-","|","\\","|"]: print "%s\r" % i, Python的for循环实际上是一个foreach循环。因此,[“/”、“-”、“|”、“\\”、“|”]中的i的:迭代此列表中的每个字符串 打印“%s\r”%i将i(每次迭代都是列表中不同的字符

我正在学习python,发现了一个有趣的例子。我运行这段代码,输出是“/”、“-”、“|”、“\”中的一个符号,并不断更改,我不明白它到底是如何工作的

while True:
    for i in ["/","-","|","\\","|"]:
        print "%s\r" % i,

Python的
for
循环实际上是一个
foreach
循环。因此,[“/”、“-”、“|”、“\\”、“|”]中的i的
迭代此列表中的每个字符串

打印“%s\r”%i
i
(每次迭代都是列表中不同的字符串)打印为
%s
(基本字符串格式)。
/r
将光标移动到行首

for i in[“/”、“-”、“|”、“\\”、“|”]
逐个迭代列表元素


打印“%s\r”%i,
\r
是回车,它将位置重置为行的开头
i,
是这里的
元组
对象,它等于
(i,)
,它与
%s
%
一起用于字符串格式


为True时
重复上述行为。

\r
为“回车”。e、 g.它将光标移回行的开头,因此您打印出
/
,然后光标移回,并用
-
覆盖
/
,等等…有一个无限循环。在每次迭代中,它遍历符号列表,并使用
回车符打印其中一个符号。因此,打印的是新符号而不是旧符号。这两个符号都是答案的一部分,而不是注释。当我键入任何东西时,会出现另一个符号,然后再次键入,但什么都没有发生,为什么会发生这种情况?