Orig 发表于 2023-8-18 11:00:09

python问题

import time
for i in range(101):
    print("\r{:3}%".format(i), end="")
    time.sleep(0.1)

为什么这串代码是每隔3%打印一次啊?

isdkz 发表于 2023-8-18 11:00:22

这段代码会每隔1%打印一次,而不是每隔3%打印一次。

在代码中, for 循环迭代了0到100的数字,即101次。在每次迭代中,使用 print 函数打印当前数字的百分比。 \r 是一个特殊的转义字符,它会将光标移动到当前行的开头,以便覆盖之前打印的内容。 {:3} 是一个格式化字符串,表示将数字以3位宽度打印。

time.sleep(0.1) 是一个暂停函数,它会让程序暂停0.1秒,以便在打印每个百分比后等待一段时间。

因此,代码会在每次迭代后暂停0.1秒,并打印当前数字的百分比。由于每次迭代增加1,所以看起来就好像是每隔1%打印一次。
页: [1]
查看完整版本: python问题