python中print(obj) 与sys.stdout.write()的区别
Posted 夏天换上冬装
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python中print(obj) 与sys.stdout.write()的区别相关的知识,希望对你有一定的参考价值。
print(obj) 其实等价于sys.stdout.write(obj+
),而
表示回到行首,所以需要输出进度条时可以用以下代码
rate = float(has_sent) / float(file_size)
rate_num = int(rate * 100)
sys.stdout.write("%s%% %s
"%(rate_num, "*" * rate_num))
因为sys.stdout.write()没有加 ,不会换行,而 又会回到行首,后面的输出覆盖前面的输出。
以上是关于python中print(obj) 与sys.stdout.write()的区别的主要内容,如果未能解决你的问题,请参考以下文章
面向对象之isinstance与issubclass(python内置方法)