如何消除Python中print()输出进度条的多余空格?
解决Python进度输出的多余空格问题
要实现[500/5000] [1000/5000]这种无多余空格的进度输出,核心问题是你之前的print调用传入了多个参数,Python默认会用空格分隔这些参数,导致出现多余空格。以下是几种简单的解决方法:
使用f-string(推荐,Python3.6+):
直接把变量嵌入到单个字符串中,语法简洁且不会产生多余空格:print(f"[{c}/{len(my_list)}] ", end='')使用str.format():
把整个进度格式写在一个字符串模板里,一次性传入变量,避免拆分参数:print("[{}/{}] ".format(c, len(my_list)), end='')直接字符串拼接:
将数字转成字符串后直接拼接成完整的进度字符串:print("[" + str(c) + "/" + str(len(my_list)) + "] ", end='')
以上三种方法都是通过生成单个完整字符串传给print,避免了多参数带来的自动空格分隔问题,输出就能符合你想要的格式。
内容的提问来源于stack exchange,提问作者mahmood
相关产品推荐
相关产品推荐

