我们先看看这张转义字符图:

1. 知识储备

\r 表示将光标的位置回退到本行的开头位置
\b 表示将光标的位置回退一位

python 语言中, 使用 print 打印输出时,默认是会进行换行的。如何让其不换行呢?

  • python 2.x 中的语法是在 print 语句的末尾添加逗号,例如 print x, ;或者使用 sys.stdout.write() 对标准输出进行重定向,如此文所示 https://segmentfault.com/q/1010000002810865
  • python 3.x 中,print 成为了一个独立的函数,有一个 end 参数,可以指定输出的结束符,默认是 \n

2. 在命令行中实现倒计时功能

 # __author__ = "Gao Zhengjie"
# __date__ = "2018/1/5"
# __Desc__ = 在一行中不断刷新倒计时 import time count_down = 10 # 设置倒计时时间,单位:秒
for i in range(count_down, 0, -1):
msg = u"\r系统将在 " + str(i) + "秒 内自动退出"
print(msg, end="")
time.sleep(1)
end_msg = "结束" + " "*(len(msg)-len("结束")) # 如果单纯只用“结束”二字,无法完全覆盖之前的内容
print(u"\r"+end_msg)

3. 在命令行中实现“转圈”功能

 # __author__ = "Gao Zhengjie"
# __date__ = "2018/1/5"
# __Desc__ = 在一行中不断刷新转圈 import time count_down = 10 # 设置倒计时时间,单位:秒
interval = 0.25 # 设置屏幕刷新的间隔时间,单位:秒
for i in range(0, int(count_down/interval)):
ch_list = ["\\", "|", "/", "-"]
index = i % 4
msg = "\r程序运行中 " + ch_list[index]
print(msg, end="")
time.sleep(interval)
print(u"\r结束" + " "*len(msg))

4. 在命令行中实现进度条功能

 # __author__ = "Gao Zhengjie"
# __date__ = "2018/1/5"
# __Desc__ = 在命令行中实现进度条功能 import time count_down = 10 # 设置倒计时时间,单位:秒
interval = 1 # 设置屏幕刷新的间隔时间,单位:秒
for i in range(0, int(count_down/interval)+1):
print("\r"+"▇"*i+" "+str(i*10)+"%", end="")
time.sleep(interval)
print("\n加载完毕")
作者:高正杰
链接:https://www.jianshu.com/p/eb5c23cd6e34
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

 

最新文章

  1. Visual SVN 5.01 Po jie 笔记
  2. 如何隐藏UITableView中的一项
  3. python 运行python manege.py runserver时报错:“no module named djangorestframework” 的解决方案
  4. linux 线程函数大全
  5. arcobject 相关
  6. Codeforces Beta Round #51 A. Flea travel 水题
  7. java判断数据类型两种方式
  8. UVa 12299 RMQ with Shifts(线段树)
  9. JS中的top是什么?
  10. 在linux(centos)系统安装nginx教程
  11. WMS程序部署
  12. 使用pyenv与pyenv-virtualenv管理Python版本与虚拟环境
  13. DevExpress GridControl小结
  14. 解决ios10以上版本缩放问题
  15. Struts2(三)配置详解
  16. 因环境变量设置问题引起的command not found
  17. linux下切换用户出现This account is currently not available
  18. Appium与Robotium区别
  19. 【转】Java中关于WeakReference和WeakHashMap的理解
  20. leetcode笔记9 Move Zeroes

热门文章

  1. Jmeter Grafana Influxdb 环境搭建
  2. stl容器学习——queue,stack,list与string
  3. 高阶篇:4.3)FTA故障树分析法-DFMEA的另外一张脸
  4. CF1063F. String Journey(后缀数组+线段树)
  5. mysql安装启动 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
  6. mysql 5.7 的 /etc/my.cnf
  7. 未来一年的13大手机APP开发趋势
  8. centos 7编译安装mysql 5.7.17
  9. Android使用7牛云存储
  10. lua热重载