Python(3.5) - 使用附加文本格式化数字

时间:2016-12-12 20:40:04

标签: python python-3.x

这是一个相当直接的问题,但我是新的,所以我很难正确地格式化这个问题。我有一些代码正在下载项目并为我提供完整百分比的动态print()

while True:
    buf1 = resp.read(blocksize)
    if not buf1:
        break
    buf.write(buf1)
    size += len(buf1)
    if length:
        print('Downloading: {:.1f}\r%'.format(size/length*100), end='')# print('{:.2f}'.format(size/length), 'done')
print()

让我们仔细看看那条印刷线

print('Downloading: {:.1f}\r%'.format(size/length*100), end='')

现在它正在打印%Downloading 100.0

但我想打印Downloading 100.0%(或者可能只是没有小数可能看起来更好)

感谢您提供的任何帮助。

1 个答案:

答案 0 :(得分:3)

在我看来,你想要像:

print('Downloading: {:.1f}%'.format(size/length*100), end='')

或可能:

print('\rDownloading: {:.1f}%'.format(size/length*100), end='')

基本上,您要在要保留在一起的内容中间粘贴回车符。您的回车应该在您想要保持在一起的内容之前或之后。