进度条和`print`本来就不应该同时出现。 进度条的原理就是不断刷新当前行的文本,你用了`print`后会换行,`tqdm`就不会刷新`print`之前的当前行,而是在下一行打印进度,就会产生多行进度条。 你应该通过环境变量调试,如: import os env = os.getenv('DEBUG') if env != '1': iterable = tqdm(range(100)) else: iterable = range(100) for i in iterable: time.sleep(0.1) if env == '1': print(i)